小编Mik*_*ike的帖子

WebDriver Chrome浏览器:弹出"避免使用chrome来保存密码"

每次我的webdriver测试登录到应用程序时,出现'你想要chrome保存密码'弹出窗口..有没有办法避免这种情况?

请帮忙.

谢谢,迈克

selenium selenium-grid selenium-rc selenium-chromedriver selenium-webdriver

17
推荐指数
4
解决办法
1万
查看次数

如何使用带有 Java 的 Selenium WebDriver 单击按钮?

以下是按钮的 HTML 代码:

<span>
<button class="buttonLargeAlt" onclick="javascript:submitCheckout(this.form);"type="submit">Checkout</button>
</span>
Run Code Online (Sandbox Code Playgroud)

我试过 driver.findElement(By.xpath("//span[contains(.,'Checkout')]")).click();

它不工作...

还有其他想法吗?页面上有 2 个相同名称的按钮。

java selenium automated-tests selenium-webdriver

6
推荐指数
1
解决办法
8万
查看次数

TestNG组:我们可以包括两个组名并创建一个组来运行测试吗?

我有以下testng测试方法。

    @Test(groups = {"tsg1.0","smoke"})
public void testLoginWithInvalidCredentials(String usernameValue, String passwordValue){        
    /*Print something*/
}


@Test(groups = {"tsg1.0"})          
public void testLoginWithUserIdOnly(String username) {       
    /*Print something*/
}



@Test(groups = {"tsg1.0"})          
public void testLoginWithPasswordOnly(String password) {         
    /*Print something*/
}
Run Code Online (Sandbox Code Playgroud)

这是用于测试上述方法的testng xml。

<suite name="Suite" thread-count="1" verbose="10"> 
  <test name="Test">
  <groups>
<run>  
 <include name="tsg1.0"/>    
</run>
</groups>
<packages>  
<package name="<test package name>"/>       
 </packages> 
</test>  
</suite>
Run Code Online (Sandbox Code Playgroud)

有没有一种方法可以在其中创建一个XML,该XML将包含对“ TSG1.0”和“ SMOKE”组的测试。在这种情况下,我只希望运行第一个测试(testLoginWithInvalidCredentials)。

请帮忙。

谢谢,迈克。

PS:以下内容将不起作用,因为它将包含tsg1.0或Smoke。我想要这里的条件...

<run>
<include name="tsg1.0"/>   
<include name="smoke"/>  
</run>
Run Code Online (Sandbox Code Playgroud)

java testng selenium selenium-rc selenium-webdriver

5
推荐指数
2
解决办法
1万
查看次数

用Java编写多线程单文件

这个问题似乎很常见,但是当多线程写入同一个文件(Excel)时,我遇到了问题.这是我的代码:

public class XLWriter {

private XLWriter() {
}

private static class SingletonHelper {
    private static final XLWriter INSTANCE = new XLWriter();
}

public static synchronized XLWriter getInstance() {
    return SingletonHelper.INSTANCE;
}

public static synchronized void writeOutput(Map<String, String> d) {
    try {
        --- Write file
    } catch (Exception e) {
        SOP("Not able to write output to the output file.");
    }
}

public static void createWorkBook(String fileName, String sheetName)
        throws IOException {
    try {
        -- Create workbook
    } catch (WriteException e) …
Run Code Online (Sandbox Code Playgroud)

java oop multithreading

5
推荐指数
1
解决办法
6532
查看次数

是否有通用的Java解析Json方法?

不幸的是,我曾尝试过gson和Jackson解析器,但我达不到我想要的目标。

{
   "rateName": "My Special Rate",
   "adjustments":    [
            {
         "adjustmentType": "LOAN_AMOUNT_GREATER_THAN_550K",
         "rate": 0.75
      },
            {
         "adjustmentType": "AMORTIZATION_TERM_LESS_THAN_30_YEARS",
         "rate": -0.2
      }
   ],
   "errorTypes": [],
   "premiumTaxs": [],
   "renewalPremiums": [],
   "totalInitialRate": 1.95,
   "optimumPricing": false,
   "miPricingVO": null,
   "rateCardId": "BALS_NR",
   "ratingInfoBaseRate": 1.4
}
Run Code Online (Sandbox Code Playgroud)

上面是我要解析的Json。我想创建通用方法,使用该方法可以轻松按名称访问值。例如:

  1. getName(rateName)-应该返回“我的特别房价”
  2. getNameFromArray(adjustmentType,调整项)-应该返回'LOAN_AMOUNT_GREATER_THAN_550K'

有没有办法做到这一点?它应该是通用的,以便可以应用于任何Json文件。

附加信息:我尝试使用Gson,但这会解析整个文件,如果找到数组,则会引发错误。

JsonReader j = new JsonReader(new FileReader("Path of Json"));
        j.beginObject();
        while (j.hasNext()) {
            String name = j.nextName();

            if (name.equals("rateName")) {
                System.out.println(j.nextString());
            }
            System.out.println(name);
        }
Run Code Online (Sandbox Code Playgroud)

我尝试过杰克逊,遇到了和格森一样的事情。

JsonFactory jfactory = new JsonFactory();
        JsonParser jParser = jfactory.createJsonParser("Path of Json");
        while (jParser.nextToken() …
Run Code Online (Sandbox Code Playgroud)

java json jackson gson

4
推荐指数
1
解决办法
8905
查看次数

如何在WebDriver with Java中使用XPATH单击此元素?

这是HTML:

<li>
<input type="checkbox" checked="" name="selectedMstrPrivGroupList[9].mstrAuthorities[0].status"/>
Add Dexter
</li>
Run Code Online (Sandbox Code Playgroud)

如何在WebDriver中单击此元素?这是一个复选框.我想使用XPath,因为我在页面中有近30个以上的复选框.这样我就可以创建一个泛型方法并只传递WebElement.我尝试了以下但没有奏效.

Driver.findElement(By.xpath("//input[contains(.,'Add Dexter')]")).click();
Run Code Online (Sandbox Code Playgroud)

java xpath webdriver click selenium-webdriver

3
推荐指数
1
解决办法
2万
查看次数

如何使用 Sikuli(Java) 从屏幕上的特定位置获取值?

我的场景:

尝试使用 Sikuli(Java) 自动化计算器。每次操作完成时,我都需要获得结果(以文本形式)。示例:1 * 2 = 2。需要从结果区域/区域中捕获“2”。有人可以帮助我我该怎么做?

结果可能是动态的,因此在运行时读取它然后与输入值进行比较对我来说很重要。

谢谢你,迈克

java testing automation automated-tests sikuli

3
推荐指数
1
解决办法
7242
查看次数

如何将此xpath转换为css?

如何在Xpath下面改为css?请帮忙.

//button[text()='Continue' and @class='buttonLargeAlt' and @type='submit']
Run Code Online (Sandbox Code Playgroud)

selenium css-selectors selenium-rc selenium-webdriver

3
推荐指数
2
解决办法
3403
查看次数

Java:从wsdl获取示例请求XML

有没有办法可以单独使用wsdl(url)获取样本请求xml?

以下是wsdl示例:http://www.webservicemart.com/uszip.asmx? WSDL 示例请求:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ws="http://webservicemart.com/ws/">
   <soapenv:Header/>
   <soapenv:Body>
      <ws:ValidateZip>
         <!--Optional:-->
         <ws:ZipCode>?</ws:ZipCode>
      </ws:ValidateZip>
   </soapenv:Body>
</soapenv:Envelope>
Run Code Online (Sandbox Code Playgroud)

我知道有像SOAPUI这样的工具可以做到这一点.但是,如果没有使用这些工具,有没有其他方法可以使用java实现它?

使用wsimport是一个可以获得java源代码的选项,这更加静态.有没有动态的方法来做到这一点?

遇到异常:

18:57:59,677 WARN  [SoapUI] Missing folder [D:\TestAutomation\Z_ZZLastResort\.\ext] for external libraries
18:57:59,920 INFO  [DefaultSoapUICore] initialized soapui-settings from [C:\Users\mike\soapui-settings.xml]
Progress: 1 - Caching Definition from url [http://www.webservicemart.com/uszip.asmx?WSDL]
18:58:00,587 INFO  [SchemaUtils] Added default schema from file:/C:/Users/mike/Desktop/soapui-4.5.1-SNAPSHOT.jar!/com/eviware/soapui/resources/xsds/xop.xsd with targetNamespace http://www.w3.org/2004/08/xop/include
18:58:00,625 INFO  [SchemaUtils] Added default schema from file:/C:/Users/mike/Desktop/soapui-4.5.1-SNAPSHOT.jar!/com/eviware/soapui/resources/xsds/XMLSchema.xsd with targetNamespace http://www.w3.org/2001/XMLSchema
18:58:00,627 INFO  [SchemaUtils] Added default schema from file:/C:/Users/mike/Desktop/soapui-4.5.1-SNAPSHOT.jar!/com/eviware/soapui/resources/xsds/xml.xsd with targetNamespace http://www.w3.org/XML/1998/namespace
18:58:00,628 INFO …
Run Code Online (Sandbox Code Playgroud)

java xml soap wsdl web-services

3
推荐指数
1
解决办法
2万
查看次数

使用javascript为Web元素设置文本 - Selenium Web驱动程序

如何使用java脚本执行器设置Web元素的文本?或者还有其他方法吗?

<a class="selectBox selectBox-dropdown selectBox-menuShowing selectBox-active" style="width: 52px; display: inline-block; -moz-user-select: none;" title="" tabindex="0">
<span class="selectBox-label" style="width: 13px;">10</span>
<span class="selectBox-arrow"/>
</a>
Run Code Online (Sandbox Code Playgroud)

标签下面有两个span元素 - 这是一个下拉列表.用户点击span [2]并显示一个列表,其中包含10,20,30,40等数据.用户点击数字(元素)并设置为span [1]的文本(在此案例,选择10).我该如何解决这个问题?

我尝试了Action构建器,但它无法正常工作.有没有其他建议?

selenium ui-automation selenium-webdriver

3
推荐指数
1
解决办法
7182
查看次数

如何将日期差异作为具有毫秒精度的浮点数

public static void main(String[] args) throws InterruptedException{
    long sTime =  new Date().getTime();
    Thread.sleep(3234);
    long eTime =  new Date().getTime();
    float diff = ((eTime-sTime)/1000);
    System.out.println(diff);
}
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,我期望输出为3.234,但它是3.0.我想要两秒之间的精确差异,只有一小部分.

java date date-difference

1
推荐指数
1
解决办法
1377
查看次数

将字符串拆分为三个没有分隔符的部分(Java)

我有一个 String

String test = "7462356098660AE";
Run Code Online (Sandbox Code Playgroud)

我想把它分成:

test1 = "746";
test2 = "2356";
test3 = "0986";
test4 = "60AE";
Run Code Online (Sandbox Code Playgroud)

String的长度test将始终相同.

我怎么能这样做?

PS:我已经检查了其他问题,但找不到合适的答案.

java

0
推荐指数
1
解决办法
2762
查看次数

在pom.xml中指定wsdl url并将wsdl jar下载到本地计算机

这是一个wsdl服务链接:http://www.webservicemart.com/uszip.asmx? WSDL

如果我运行以下命令:

wsimport -s src -d bin http://www.webservicemart.com/uszip.asmx?WSDL

此命令在/ src目录中生成Java源代码,并在/ bin目录中生成相对于发出命令的目录的已编译.class文件.这些生成的类可用于访问远程Web服务.

通过发出以下命令,创建了一个jar文件zipws.jar,其中包含com.webservicemart.ws包中的类:

  • cd/bin
  • jar cvf zipws.jar com

我可以将这个jar添加到java项目的构建路径中并使用它.

有没有办法让我可以用maven2创建一个java项目,并在POM.xml中指定这个wsdl url并将jar直接下载到我的本地机器中?如果您需要更多信息,请与我们联系.

java wsdl web-services wsdl2java maven

0
推荐指数
1
解决办法
8510
查看次数