![](/img/trans.png)
[英]Data on 2nd page showing data of 1st page in gridview with paging applied
[英]referring functions of 1st cs page in 2nd cs page
我们可以在一个cs页面中定义一个函数,然后在另一个cs页面中引用该函数,以便在第二cs页面中设计的函数与第一cs页面函数一起执行吗?
像..在第一页的cs
Iwebdriver driver;
driver=new firefoxdriver();
在第二个CS页面中,基于上述功能,我包含了许多功能,因此,如何在第二个CS页面中将此功能称为函数,从而使代码更简单?
这是一个措辞很差的问题,但是我只能假设,您实质上想要实现的功能是能够从另一个测试中的一个测试或从另一个类中的一个类调用函数。
这是基本的C#。
您的代码应该以易于实现的方式拆分。 因此,这意味着您的测试与实际逻辑完全分开。
使用页面对象是一种方法:
http://code.google.com/p/selenium/wiki/PageObjects
这意味着您将拥有一个类似以下的页面:
public class LoginPage
{
public HomePage Login(string username, string password)
{
// do the login stuff
// return the home page
}
}
public class HomePage
{
// some logic related to what the user can see on the home page.
}
您可以在如下测试中调用它:
var loginPage = new LoginPage();
HomePage homePage = loginPage.Login(username, password);
由于现在已分开,因此您可以从任何地方调用LoginPage.Login()
。
这里的关键是不要将所有逻辑捆绑到测试本身中。 在这种情况下,请勿复制/粘贴登录代码以登录到每个测试中的网站。 像上面一样存储它。 测试应该是您要执行的步骤,页面对象应该定义如何执行这些步骤。 这样,您就可以实现自己的目标。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.