我是 c# 和 Selenium 的初学者。我想知道是否可以在同一浏览器实例中运行多个 [TestMethod]-s 而无需关闭它?
例如“Can_Change_Name_And_Title”完成后,我想继续“Can_Change_Profile_Picture”。
[TestMethod]
public void Can_Change_Name_And_Title()
{
SidebarNavigation.MyProfile.GoTo();
ProfilePages.SetNewName("John Doe").SetNewTitle("New Title Test").ChangeNameTitle();
}
[TestMethod]
public void Can_Change_Profile_Picture()
{
SidebarNavigation.MyProfile.GoTo();
ProfilePages.SetNewProfilePicture(Driver.BaseFilePath + "Profile.png").ChangeProfilePicture();
}
看起来您需要测试链,但测试依赖于其他测试则表明存在设计缺陷。尽管如此,还是有一些方法可以实现这一目标。您可以创建有序的单元测试,这基本上是确保测试顺序的单个测试容器。
这是关于MSDN http://msdn.microsoft.com/en-us/library/ms182631.aspx,或者你可以使用Playlist
Right click on the test method -> Add to playlist -> New playlist
执行顺序将与您将它们添加到播放列表中时相同,但如果您想更改它,您拥有该文件
如果您需要在执行过程中保留测试数据/对象,您可以使用一些全局变量。我正在使用这样的 TestDataStore:
private Dictionary<string, yourObjData> _dataStore = new Dictionary<string, yourObjData>();
因此您可以随时添加和检索您需要的内容(包括您的会话详细信息、网络驱动程序等)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)