- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是我的一个客户端应用程序的副本。我想测试负面场景,例如我给出的值不应在下拉列表中可用。我将采用断言功能的 j 值。如果j值不为1,则我给出的值不在下拉列表中。
对于下面的程序,我期望 j 值为 1,但它仅显示 0。为什么 iqual 忽略大小写在 for 循环内部不起作用,但在 for 循环外部起作用。我什至列出了 forloop 内的所有值,它具有“May”值。
是否有任何简单的脚本来检查我给出的值不在下拉列表中?
package Facebook;
import java.util.List;
import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.Select;
import org.testng.annotations.Test;
public class Login2 {
@Test
public void Login() throws InterruptedException {
System.setProperty("webdriver.chrome.driver",
"D:\\Besent Technology\\Drivers\\chromedriver_win32_2.34\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("https://www.facebook.com/");
List<WebElement> monthlist = driver.findElements(By.id("month"));
String month = "May";
String mon = "May";
int i = 0;
int j = 0;
if (mon.equals(month)) {
System.out.println(mon + " project should be selected");
i++;
}
for (WebElement ele : monthlist) {
String fbmonth = ele.getText().trim();
System.out.println(ele.getText());
if (fbmonth.equals(month)) {
System.out.println(fbmonth + " project is displaying");
j++;
} else {
continue;
}
}
System.out.println("print i value: " + i);
System.out.println("print j value: " + j);
}
}
输出
[RemoteTestNG] detected TestNG version 6.14.2
Starting ChromeDriver 2.34.522940 (1a76f96f66e3ca7b8e57d503b4dd3bccfba87af1) on port 3885
Only local connections are allowed.
Aug 13, 2018 7:18:16 PM org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: OSS
May project should be selected
Month
Jan
Feb
Mar
Apr
May
Jun
Jul
Aug
Sept
Oct
Nov
Dec
print i value: 1
print j value: 0
PASSED: Login
===============================================
Default test
Tests run: 1, Failures: 0, Skips: 0
===============================================
===============================================
Default suite
Total tests run: 1, Failures: 0, Skips: 0
===============================================
最佳答案
好的,我通过运行您编写的测试找到了答案,这是由于您的变量 fbmonth 不返回月份为 Jan、Feb 个人,事实上它返回 fbmonth 等于“Month\nJan”\n二月\n三月\n四月\n五月\n六月\n七月\n八月\n九月\n十月\n十一月\n十二月"
你需要打破/分割它并迭代以获得你想要的。 更新使用它来迭代:
for (WebElement ele : monthlist) {
System.out.println(ele.getText());
String[] fbmonth = ele.getText().trim().split("\n");
for(j=0;j<fbmonth.length;j++) {
System.out.println("fbmonth" +j +"="+ fbmonth[j] );
if (fbmonth[j].equals(month)) {
System.out.println(fbmonth[j] + " project is displaying");
}
}
}
关于java - equals 在 for 循环内部不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51824152/
今天有小伙伴给我留言问到,try{...}catch(){...}是什么意思?它用来干什么? 简单的说 他们是用来捕获异常的 下面我们通过一个例子来详细讲解下
我正在努力提高网站的可访问性,但我不知道如何在页脚中标记社交媒体链接列表。这些链接指向我在 facecook、twitter 等上的帐户。我不想用 role="navigation" 标记这些链接,因
说现在是 6 点,我有一个 Timer 并在 10 点安排了一个 TimerTask。之后,System DateTime 被其他服务(例如 ntp)调整为 9 点钟。我仍然希望我的 TimerTas
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我就废话不多说了,大家还是直接看代码吧~ ? 1
Maven系列1 1.什么是Maven? Maven是一个项目管理工具,它包含了一个对象模型。一组标准集合,一个依赖管理系统。和用来运行定义在生命周期阶段中插件目标和逻辑。 核心功能 Mav
我是一名优秀的程序员,十分优秀!