小编Sam*_*mmi的帖子

如何使用Selenium WebDriver和Java切换到另一个选项卡

我打开google.com,然后点击"GMail"超链接,在同一浏览器上打开一个新标签.

现在我想切换到使用Selenium WebDriver打开GMail的新选项卡.

代码段是:

  WebDriver wd = new ChromeDriver();
  wd.get("https://www.google.co.in/?gws_rd=ssl");       
  wd.findElement(By.linkText("Gmail")).sendKeys(Keys.CONTROL,Keys.RETURN);
Run Code Online (Sandbox Code Playgroud)

现在我想转到我打开GMail链接的选项卡.我已经搜索了N个解决方案,但没有一个有效.

例如

解决方案1:

String Tab1 = wd.getWindowHandle(); 
ArrayList<String> availableWindows = new ArrayList<String>(wd.getWindowHandles()); 
if (!availableWindows.isEmpty()) { 
wd.switchTo().window(availableWindows.get(1)); 
}
Run Code Online (Sandbox Code Playgroud)

解决方案2:

driver.findElement(By.cssSelector("body")).sendKeys(Keys.CONTROL +"\t");
Run Code Online (Sandbox Code Playgroud)

请建议.我坚持这个.

java selenium-webdriver

7
推荐指数
3
解决办法
5万
查看次数

无法通过java Runtime.getRuntime().exec()执行CURL命令

我正在使用java执行curl命令.

curl -i --user "OAMADMIN_tenant_358922247351079_svc_358922247369079_APPID:Iuj.2swilg5fhv" -H "Content-Type: application/json" -H "Accept: application/json" -H 'X-USER-IDENTITY-DOMAIN-NAME: tenant_358922247351079' -H "X-RESOURCE-IDENTITY-DOMAIN-NAME: tenant_358922247351079" --request GET "https://slc04yre-1.dev.oraclecorp.com:4443/oam/services/rest/11.1.2.0.0/oauth/admin/Clients?name=myMCS_svc_358922247369079_MCS_Client_OAUTHCLIENT"
Run Code Online (Sandbox Code Playgroud)

我想在我的代码中获取此curl命令的输出,但我的stdoutput将变为空.

 private static String executeCommand(String command) {
        StringBuffer output = new StringBuffer();

        Process p;
        try {
            p = Runtime.getRuntime().exec(command);

            BufferedReader reader = new BufferedReader(new InputStreamReader(
                    p.getInputStream()));
            //p.waitFor();
            String line = "";
            while ((line = reader.readLine()) != null) {
                System.out.println("line="+line);
                output.append(line + "\n");
            }

        } catch (Exception e) {
            e.printStackTrace();
        }

        return output.toString();

    }
Run Code Online (Sandbox Code Playgroud)

尝试手动执行curl命令,其工作正常.然后我打印出标准错误,我可以看到:

   [testng] error line=
   [testng] error line=curl: …
Run Code Online (Sandbox Code Playgroud)

java curl

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

如何在perl中获取http和https返回码

我是 Perl 新手,任何帮助将不胜感激!

我必须通过 perl 调用一些 URL(在 unix 机器上)。URL 都是 http 和 https

如果 URL 被成功调用,那么就没有问题,否则创建一个日志文件,指出无法调用 URL。

为了调用 URL,我想使用例如

  exec 'firefox http://www.yahoo.com';
Run Code Online (Sandbox Code Playgroud)

但是如何获取http和https请求状态码呢?类似如果状态为 200,则确定,否则错误..

请帮忙!!

perl https http

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

登录多线程应用程序

我正在研究java中的交易应用程序(一次有数百万个数据),这是一个广泛的多线程.应用程序将消息记录在日志文件中.目前,此Logging的性能非常低,占用大量CPU时间.

我想重新实现它.我LinkedBlockingQueue用谷歌搜索并找到了一个选项.arrayBlockingQueue由于其固定的大小,不能使用.

此外,像log4j这样的框架也听起来不错,因为它们是线程安全的.但是我怀疑log4j对于多线程应用程序来说是否是一个很好的选择.

在我的多线程应用程序中进行日志记录时,我应该选择哪种最佳数据结构/框架?

java multithreading

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

Perl中的正则表达式匹配问题

我是Perl的新手,任何帮助都将不胜感激.我有2个变量:$release$env_type.我想检查一个字符串是否包含$release_$env_type,然后做一些事情.例如,

$release="beta";
$env_type="testing";
so string is beta_testing
Run Code Online (Sandbox Code Playgroud)

代码段:

if ( $_ =~ /${release}_${env_type}/ ) {
        #do Something
 }
Run Code Online (Sandbox Code Playgroud)

此if条件无法解决.请告诉我进行此项检查的正确语法是什么?我在谷歌搜索但没有得到任何好的帖子..

请帮忙!

我有一个内容文件:

admin_vh_c9_simv2_edg=/console,/consolehelp
idminternal_vh_c9_simv2_edg=/oim,/soa-infra
sso_vh_c9_simv2_edg=/oim,/soa-infra,/odsm

my $env_type = "edg";
my $release  = "c9_simv2";
#Input file containing contexts
my $idmInternal = "./IdmContexts.conf";
if ( !-e $idmInternal ) {
    die "Unable to find the file $idmInternal!\n";
}

open( MYFILE, $idmInternal );
while (<MYFILE>) {
    chomp;
    if ( $_ =~ /${release}_${env_type}/ ) {
        push( @filtered, $_ );
    } …
Run Code Online (Sandbox Code Playgroud)

regex perl

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

标签 统计

java ×3

perl ×2

curl ×1

http ×1

https ×1

multithreading ×1

regex ×1

selenium-webdriver ×1