我有一种方法说Login
。"First class"
现在在我的"Second class"
再次登录中需要完成,所以任何人都可以告诉我完成这项任务的最简单方法是什么?
- 我是否应该在第二类中创建第一类的对象并调用第一类的方法。
- 我应该创建基类并扩展它吗?
如果可能,请提供任何示例谢谢
我有一种方法说Login
。"First class"
现在在我的"Second class"
再次登录中需要完成,所以任何人都可以告诉我完成这项任务的最简单方法是什么?
如果可能,请提供任何示例谢谢
好吧,让我在这里回答这个问题:
class MyBase
{
void Login()
{
// TODO base defined login here
}
}
class FirstClass extends MyBase
{
// Define your methods in any order it is fine
void Login()
{
// TODO firstclass defined login here
}
void addTest()
{
// Addtest code here
}
}
int main()
{
MyBase base;
FirstClass firstClass;
base.Login() // Will call the MyBase method for Login
firstClass.Login() // Will call the FirstClass method for Login
}
所以定义方法的顺序并不重要,只要你做得很好。如果可能,请阅读Java 中的继承,以便更清楚地了解您的方法。
你现在完全明白了吗..?如果是,那么开始编码,如果不是,那么让我知道,我们会更深入......
我建议实现一个Page Object Model,并将登录代码重构为表示登录屏幕的对象的方法。这样,登录代码将最容易被任何需要执行登录的测试用例使用。代码看起来像这个简化版本:
public class LogInScreen {
public void LogIn(String username, String password) {
userNameTextField.sendKeys(username);
passwordTextField.sendKeys(password);
loginButton.click();
}
public class MyTests {
@Test
public void testLoginNormalUser() {
String username = "userA";
String password = "badg3rs";
publicscreen.LogIn(username, password);
// carry on with the rest of the test.
}
@Test
public void testLoginAdminUser() {
String username = "userB";
String password = "3lk";
publicscreen.LogIn(username, password);
// carry on with the rest of the test.
}
请注意您从中获得的好处:
login()
方法。