package seleniumTestLoginModule; import org.openqa.selenium.*; import org.openqa.selenium.firefox.FirefoxDriver; class LoginDetail { public void case1(String s) throws Exception { if(s.equals("请您填写手机/邮箱/用户名")) { System.out.println("Case1: 当没有输入用户名和密码时候点击登陆,将提示: " + s + "---Pass"); } else { System.out.println("Case failed, " + "CurrentText is " + s); } Thread.sleep(3000); } public void case2(String s) throws Exception { if(s.equals("请您填写密码")) { System.out.println("Case2: 当密码为空时候点击登陆,将提示: " + s + "---Pass"); } else { System.out.println("Case failed, " + "CurrentText is " + s); } Thread.sleep(3000); } public void case3(String s) throws Exception { if(s.equals("请您填写手机/邮箱/用户名")) { System.out.println("当输入账号为空的时候点击登陆,将提示:" + s + "---Pass"); } else { System.out.println("Current Text is " + s); } } /*public void case4(String s) throws Exception { if(s.equals("您输入的帐号或密码有误,忘记密码?")); { System.out.println("Case4: 当输入的密码有误时提示: " + s + "---Pass"); } else { System.out.println("Current Text is " + s); } }*/ } public class Login { public static void main(String[] args) throws Exception { // TODO 自动生成的方法存根 LoginDetail loginDetail = new LoginDetail(); WebDriver browser = new FirefoxDriver(); browser.get("https://www.baidu.com"); WebElement findLoginButton = browser.findElement(By.linkText("登录")); findLoginButton.click(); Thread.sleep(3000); WebElement findAccountName = browser.findElement(By.id("TANGRAM__PSP_8__userName")); WebElement findPassword = browser.findElement(By.id("TANGRAM__PSP_8__password")); WebElement findSubmit = browser.findElement(By.id("TANGRAM__PSP_8__submit")); //case 1 当没有输入用户名和密码时候点击登陆 findSubmit.submit(); String s = browser.findElement(By.id("TANGRAM__PSP_8__error")).getText(); loginDetail.case1(s); //case2 当密码为空的时候点击登陆 findAccountName.clear(); findPassword.clear(); findAccountName.sendKeys("aa740578857"); findPassword.sendKeys(""); findSubmit.submit(); s = browser.findElement(By.id("TANGRAM__PSP_8__error")).getText(); loginDetail.case2(s); //case3 当账号为空的时候点击登陆 findAccountName.clear(); findPassword.clear(); findAccountName.sendKeys(""); findPassword.sendKeys("abc123456"); findSubmit.submit(); s = browser.findElement(By.id("TANGRAM__PSP_8__error")).getText(); System.out.println(s + "1"); //loginDetail.case3(s); /* //case4 当输入的密码错误的时候点击登陆 findAccountName.clear(); findPassword.clear(); findAccountName.sendKeys("aa7405788"); findPassword.sendKeys("abc123456"); findSubmit.submit(); s = browser.findElement(By.id("TANGRAM__PSP_8__error")).getText(); //loginDetail.case4(s); */ browser.quit(); } }
第二条case我试着在打印前 sleep5秒,可以拿到errorMessage, 但是第三条case不行。。。
######
在不影响功能测试的情况下,只要将case3的代码顺序改下就行了
//case3 当账号为空的时候点击登陆
findPassword.clear();
findPassword.sendKeys("abc123456");
System.out.println(s);
具体原因不明,或者你clear之后就不用输入空了,应该也可以执行成功
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。