如何在Coded UI VS2013中创建页面对象模型框架

本文关键字:创建 对象模型 框架 VS2013 Coded UI | 更新日期: 2023-09-27 18:25:25

我试图为正在测试的网站从头开始创建一个Coded Ui框架。

我知道也许有更好的方法来解决这个问题,找到一个我可以使用的免费版本(例如Cuite),但我想从一开始就知道它是如何工作的,并对它正在做的事情有信心。

这是我设置的。

我有一个主要的编码UI目录,我创建了一个PageObjects文件夹,它与Properties和References目录(存储库)位于同一级别。

页面对象目录包含每个页面的子文件夹(例如主页、注册、注册、联系我们等)

每个子文件夹都有一个".uitest"文件(例如Home.uitest、Registration.uitest)在主文件夹中,有一个UIMap.uitest文件仍然存在。

Page_Objects
------- Home_Page
----------------- NavigateToThe_Home_Page.cs
----------------- RefreshThe_Home_Page.cs
----------------- SelectLinksOnMenuItem_Home_Page.cs
----------------- PAginateThroughInformation_Home_Page.cs
----------------- Home_Page.cs
---------------------------- Home_Page.Designer.cs
---------------------------- Home_Page (partial)
----------------- Home_Page.uitest
------- Registration
----------------- Registration.cs
---------------------------- Registration.Designer.cs
---------------------------- Registration (partial)
----------------- Registration.uitest
UIMap.uitest

这似乎在一定程度上起到了作用,但当从一个目录(Home)在另一个目录中运行测试(注册,甚至回到根级别)时,我仍然会遇到问题。

我只想知道使用这个过程的最佳方式,因为我找不到任何关于如何做到这一点的明确定义。

我是自动化方面的新手,所以在向我解释事情时请保持简单。

非常感谢

Phil

如何在Coded UI VS2013中创建页面对象模型框架

没有唯一的页面对象模型,因为不需要所有页面对象模型框架都相同。因此,您可以使用页面对象创建自己的框架。

,我建议你做我做的事

(1) 创建一个类测试方法(也许您已经拥有了它)。说它是CodedUI.cs

(2) 您说您已经有了.uitest文件,所以请确保为每个uimap.cs提供一个唯一的名称

     *HomeUIMap.cs  
     *RegistrationUIMap.cs  
     *ContactUs.cs

(3) 现在为codedUI.cs类中的所有uimap.cs创建对象

     *HomeUIMap HomeObj = new HomeUIMap();  
     *RegistrationUIMap RegObj = new RegistrationUIMap(); 
     *ContactUsUIMap ContactUsObj = new ContactUsUIMap(); 

(4) 现在,您可以按所需顺序使用对象调用每个页面的函数

示例:
*主页对象导航到主页()
*HomeObj.RefreshHomePage();

希望你现在有个主意。