[Testing] Feature Matrix UITest Cases for CollectionView EmptyView Feature#28679
[Testing] Feature Matrix UITest Cases for CollectionView EmptyView Feature#28679PureWeen merged 15 commits intoinflight/candidatefrom unknown repository
Conversation
|
/azp run |
|
Azure Pipelines successfully started running 3 pipeline(s). |
jsuarezruiz
left a comment
There was a problem hiding this comment.
Other tests failing on Android:
- ValidateEmptyViewStringDisplayed_AndItemSourceEmptyObservableCollectionSetFirst
- ValidateEmptyViewStringDisplayed_AndObservableCollectionSetFirst
- ValidateEmptyViewStringDisplayed_GroupedListSetFirst
- ValidateEmptyViewStringDisplayedSetFirst_AndBasicItemTemplate
- ValidateEmptyViewStringDisplayedSetFirst_AndGroupedList
- ValidateEmptyViewStringDisplayedSetFirst_AndItemSourceEmptyGroupedList
- ValidateEmptyViewStringSetFirst_AndObservableCollection
- ValidateEmptyViewTemplateDisplayed
- ValidateEmptyViewTemplateDisplayed_AndCustomEmptyView
- ValidateEmptyViewTemplateDisplayed_AndEmptyGroupedListSetFirst
- ValidateEmptyViewTemplateDisplayed_AndEmptyViewString
- ValidateEmptyViewTemplateDisplayed_AndGroupedListSetFirst
- ValidateEmptyViewTemplateDisplayedSetFirst_AndBaicItemTemplate
|
|
||
| [Test] | ||
| [Category(UITestCategories.CollectionView)] | ||
| public void ValidateECustomEmptyViewSizeDisplayedSetFirst_AndEmptyObservableCollection() |
There was a problem hiding this comment.
This test fails on Android:
at UITest.Appium.HelperExtensions.WaitForAtLeastOne(Func`1 query, String timeoutMessage, Nullable`1 timeout, Nullable`1 retryFrequency) in /_/src/TestUtils/src/UITest.Appium/HelperExtensions.cs:line 2384
at UITest.Appium.HelperExtensions.WaitForElement(IApp app, String marked, String timeoutMessage, Nullable`1 timeout, Nullable`1 retryFrequency, Nullable`1 postTimeout) in /_/src/TestUtils/src/UITest.Appium/HelperExtensions.cs:line 665
at Microsoft.Maui.TestCases.Tests.CollectionView_EmptyViewFeatureTests.ValidateECustomEmptyViewSizeDisplayedSetFirst_AndEmptyObservableCollection() in /_/src/Controls/tests/TestCases.Shared.Tests/Tests/FeatureMatrix/CollectionView_EmptyViewFeatureTests.cs:line 328
at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr)
|
|
||
| [Test] | ||
| [Category(UITestCategories.CollectionView)] | ||
| public void ValidateEmptyViewStringDisplayed_AndBasicItemTemplateSetFirst() |
There was a problem hiding this comment.
This test is failing on Android:
at UITest.Appium.HelperExtensions.Wait(Func`1 query, Func`2 satisfactory, String timeoutMessage, Nullable`1 timeout, Nullable`1 retryFrequency) in /_/src/TestUtils/src/UITest.Appium/HelperExtensions.cs:line 2367
at UITest.Appium.HelperExtensions.WaitForAtLeastOne(Func`1 query, String timeoutMessage, Nullable`1 timeout, Nullable`1 retryFrequency) in /_/src/TestUtils/src/UITest.Appium/HelperExtensions.cs:line 2384
at UITest.Appium.HelperExtensions.WaitForElement(IApp app, String marked, String timeoutMessage, Nullable`1 timeout, Nullable`1 retryFrequency, Nullable`1 postTimeout) in /_/src/TestUtils/src/UITest.Appium/HelperExtensions.cs:line 665
at Microsoft.Maui.TestCases.Tests.CollectionView_EmptyViewFeatureTests.ValidateEmptyViewStringDisplayed_AndBasicItemTemplateSetFirst() in /_/src/Controls/tests/TestCases.Shared.Tests/Tests/FeatureMatrix/CollectionView_EmptyViewFeatureTests.cs:line 491
at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr)
|
|
||
| [Test] | ||
| [Category(UITestCategories.CollectionView)] | ||
| public void ValidateEmptyViewStringDisplayed_AndEmptyGroupedListSetFirst() |
There was a problem hiding this comment.
This test fails on Android:
at UITest.Appium.HelperExtensions.Wait(Func`1 query, Func`2 satisfactory, String timeoutMessage, Nullable`1 timeout, Nullable`1 retryFrequency) in /_/src/TestUtils/src/UITest.Appium/HelperExtensions.cs:line 2367
at UITest.Appium.HelperExtensions.WaitForAtLeastOne(Func`1 query, String timeoutMessage, Nullable`1 timeout, Nullable`1 retryFrequency) in /_/src/TestUtils/src/UITest.Appium/HelperExtensions.cs:line 2384
at UITest.Appium.HelperExtensions.WaitForElement(IApp app, String marked, String timeoutMessage, Nullable`1 timeout, Nullable`1 retryFrequency, Nullable`1 postTimeout) in /_/src/TestUtils/src/UITest.Appium/HelperExtensions.cs:line 665
at Microsoft.Maui.TestCases.Tests.CollectionView_EmptyViewFeatureTests.ValidateEmptyViewStringDisplayed_AndEmptyGroupedListSetFirst() in /_/src/Controls/tests/TestCases.Shared.Tests/Tests/FeatureMatrix/CollectionView_EmptyViewFeatureTests.cs:line 131
at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr)
|
|
||
| [Test] | ||
| [Category(UITestCategories.CollectionView)] | ||
| public void ValidateEmptyViewStringDisplayed_AndEmptyViewTemplate() |
There was a problem hiding this comment.
Fails on Android:
at UITest.Appium.HelperExtensions.Wait(Func`1 query, Func`2 satisfactory, String timeoutMessage, Nullable`1 timeout, Nullable`1 retryFrequency) in /_/src/TestUtils/src/UITest.Appium/HelperExtensions.cs:line 2367
at UITest.Appium.HelperExtensions.WaitForAtLeastOne(Func`1 query, String timeoutMessage, Nullable`1 timeout, Nullable`1 retryFrequency) in /_/src/TestUtils/src/UITest.Appium/HelperExtensions.cs:line 2384
at UITest.Appium.HelperExtensions.WaitForElement(IApp app, String marked, String timeoutMessage, Nullable`1 timeout, Nullable`1 retryFrequency, Nullable`1 postTimeout) in /_/src/TestUtils/src/UITest.Appium/HelperExtensions.cs:line 665
at Microsoft.Maui.TestCases.Tests.CollectionView_EmptyViewFeatureTests.ValidateEmptyViewStringDisplayed_AndEmptyViewTemplate() in /_/src/Controls/tests/TestCases.Shared.Tests/Tests/FeatureMatrix/CollectionView_EmptyViewFeatureTests.cs:line 431
at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr)
| App.Tap("Apply"); | ||
| App.WaitForElement("No Items Available(String)"); | ||
| } | ||
|
|
There was a problem hiding this comment.
misspelling: Baic -> Basic
There was a problem hiding this comment.
Hi @jsuarezruiz I have corrected the spelling mistake in the latest commit.
There was a problem hiding this comment.
Pull Request Overview
This pull request adds a comprehensive suite of UI test cases for the CollectionView control, specifically targeting the EmptyView feature and its related configurations such as Header, Footer, ItemsLayout, and ItemTemplate.
- Introduces several new pages and view model changes for dynamic EmptyView, Header, and Footer updates.
- Adds various test cases covering different EmptyView options and ItemsSource scenarios.
- Updates the core gallery page to include the new CollectionView feature.
Reviewed Changes
Copilot reviewed 6 out of 9 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| EmptyViewOptionsPage.xaml.cs | Implements UI logic for switching between various EmptyView, Header, and Footer options. |
| CollectionViewViewModal.cs | Contains the view model logic for handling the CollectionView test items and configurations. |
| CollectionViewFeaturePage.xaml.cs | Provides a feature page to display the CollectionView UI test cases. |
| CollectionViewControlPage.xaml.cs | Implements the control page for navigating to EmptyView options. |
| CorePageView.cs | Updates the core gallery to include the new CollectionView feature page. |
Files not reviewed (3)
- src/Controls/tests/TestCases.HostApp/FeatureMatrix/CollectionView/EmptyView/CollectionViewControlPage.xaml: Language not supported
- src/Controls/tests/TestCases.HostApp/FeatureMatrix/CollectionView/EmptyView/CollectionViewFeaturePage.xaml: Language not supported
- src/Controls/tests/TestCases.HostApp/FeatureMatrix/CollectionView/EmptyView/EmptyViewOptionsPage.xaml: Language not supported
Comments suppressed due to low confidence (1)
src/Controls/tests/TestCases.HostApp/FeatureMatrix/CollectionView/EmptyView/CollectionViewViewModal.cs:31
- The file name 'CollectionViewViewModal.cs' does not match the class name 'CollectionViewViewModel'. Consider renaming the file to 'CollectionViewViewModel.cs' for consistency.
public class CollectionViewViewModel : INotifyPropertyChanged
Hi @jsuarezruiz It looks like all tests passed in the last run link: https://dev.azure.com/xamarin/public/_build/results?buildId=139258&view=ms.vss-test-web.build-test-results-tab |
|
/azp run |
|
Azure Pipelines successfully started running 3 pipeline(s). |
|
/rebase |
|
/azp run |
|
Azure Pipelines successfully started running 3 pipeline(s). |
|
/rebase |
|
/azp run MAUI-UITests-public |
|
/azp run |
|
Azure Pipelines successfully started running 3 pipeline(s). |
### Description of Change ## .NET MAUI Release Notes - Inflight/Candidate ## What's Changed ### MAUI Product Fixes * Fix CarouselView layout SR6 regressions by @albyrock87 in #29035 * Revert "[Android] picker - focus/unfocus events (#28122)" by @PureWeen in https://github.com/dotnet/maui/pull/1fb5164929 * [Windows] Fixed the flyout content width not being set correctly after updating to WinUI SDK 1.7 by @Tamilarasan-Paranthaman in #28996 * [Android] picker - focus/unfocus events by @kubaflo in #28122 * [XC] add IRootObjectProvider by @StephaneDelcroix in #28310 * [iOS] Fix for the File.ContentType from MediaPicker not being in valid MIME format by @SyedAbdulAzeemSF4852 in #28842 * [Android] Fixed the Incorrect Text Color Applied to Selected Tab in TabbedPage by @Ahamed-Ali in #28844 * [iOS] Fix FlyoutPage does not respond to changes in the FlyoutLayoutBehavior property by @devanathan-vaithiyanathan in #28884 * [Android] Fixed ScalingCanvas.SetBlur not working by @NirmalKumarYuvaraj in #28911 * [iOS] - Resolved Proper Rendering of Dynamic Header/Footer Updates in CV2 by @prakashKannanSf3972 in #28641 * [iOS] Fixed the TargetInvocationException Occurs When Selecting Header/Footer After Changing ItemsLayout in CV2 by @Ahamed-Ali in #28890 * [Windows] - Fix Visual State Issue with Picker TextColor After Navigation by @prakashKannanSf3972 in #28746 ### Dependency Updates * [Windows] Upgrade to Windows App SDK 1.7 by @MartyIX in #28499 ### Testing * [Testing] Feature Matrix UITest Cases for CollectionView EmptyView Feature by @NafeelaNazhir in #28679 * Fixed Test case failure in PR 29037 - [2025/04/21] Candidate by @HarishKumarSF4517 in #29049 **Full Changelog**: main...inflight/candidate For more information about inflight process check https://github.com/dotnet/maui/wiki/Inflight-Branch-Process
Description
This PR includes a comprehensive set of UI test cases for the CollectionView control. The tests validate the EmptyView feature functionality in CollectionView, including properties such as: EmptyView , EmptyViewTemplate, Header, Footer, ItemsLayout, ItemTemplate, ItemsSource.
EmptyView-Related Issues Identified in CollectionView