HTML代码
<a href="" ng-click="select()" tab-heading-transclude="" class="ng-binding">RESUME</a>Run Code Online (Sandbox Code Playgroud)
问题: 在我们的应用程序中单击链接后,页面将在新选项卡中打开.在那个新页面中,我必须单击"继续"选项卡(它位于页面中间).
我必须向下滚动并单击该选项卡,但无法单击.
我的代码:
browser.executeScript('window.scrollTo(0,250);');
element(by.partialLinkText("RESUME")).click();
Run Code Online (Sandbox Code Playgroud)
请帮我
我编写了Robot Framework测试脚本,.tsv用于测试Web服务/ API.当我开始收到以下错误时,一切都运行良好,直到今天(可能是因为Robot Framework的新更新):
SSLError :("握手不好:SysCallError(-1,'Unexpected EOF')",)
此错误不断弹出测试脚本中的以下代码:
${headers}= Create Dictionary Content-Type application/json Accept application/json
RequestsKeywords.Get Request httpbin ${url} headers=${headers} //ERROR SHOWS FOR THIS STATEMENT
Run Code Online (Sandbox Code Playgroud)
我确实得到了这个错误的详细回溯,如下所示:
Traceback (most recent call last):
File "/Library/Python/2.7/site-packages/RequestsLibrary/RequestsKeywords.py", line 298, in get_request
session, uri, params, headers, redir, timeout)
File "/Library/Python/2.7/site-packages/RequestsLibrary/RequestsKeywords.py", line 801, in _get_request
cookies=self.cookies)
File "/Library/Python/2.7/site-packages/requests/sessions.py", line 480, in get
return self.request('GET', url, **kwargs)
File "/Library/Python/2.7/site-packages/requests/sessions.py", line 468, in request
resp = self.send(prep, **send_kwargs)
File "/Library/Python/2.7/site-packages/requests/sessions.py", line 576, in send
r = …Run Code Online (Sandbox Code Playgroud) 我一直在测试使用量角器,除了通过css之外没有办法引用元素,因为它只提供了class属性.问题是有超过7个元素具有此类名称.因此我使用语法
element.all(by.css('h4.ng-binding')).first();
Run Code Online (Sandbox Code Playgroud)
对于第一个,它工作正常,但对其他人,它不起作用!我使用的逻辑也与第一个逻辑相同.这是我的代码片段,供其他人找到它们.
element.all(by.css('h4.ng-binding')).second();
element.all(by.css('h4.ng-binding')).third();
element.all(by.css('h4.ng-binding')).fourth();
element.all(by.css('h4.ng-binding')).fifth();
element.all(by.css('h4.ng-binding')).sixth();
element.all(by.css('h4.ng-binding')).seventh();
element.all(by.css('h4.ng-binding')).eighth();
Run Code Online (Sandbox Code Playgroud) 我想selenium/testng在我的代码中使用以下命令,因为每次执行代码时,都会创建一个新的浏览器实例,webdriver默认情况下启用安全性.
chrome.exe --disable-web-security
Run Code Online (Sandbox Code Playgroud) java selenium google-chrome selenium-chromedriver selenium-webdriver
假设我有10个spec文件都被命名*********.test.js,我想在除文件之外的所有9个文件上运行我的测试Idontwantyou.test.js.
目前我正在寻找我的spec文件config.file:
specs: ['*.test.js'] - 这将运行所有10个文件.
如何让它运行所有9个测试文件,但跳过Idontwantyou.test.js?
我正在测试角度js应用程序
当我点击Web应用程序上的UI Kit链接时,我收到以下错误 -
at demoaj.Ajapp.main(Ajapp.java:16)引起:org.openqa.selenium.NoSuchElementException:无法找到元素:{"method":"xpath","selector":"html/body/div 1/div 1/aside/div/div/ul/li [2]/a"}命令持续时间或超时:51毫秒有关此错误的文档,请访问:http: //seleniumhq.org/exceptions/no_such_element.html
我是新手,我对这个AngularJS进行了一些研究
java代码
package demoaj;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;
public class Ajapp {
public static void main(String[] args) throws InterruptedException {
WebDriver d=new FirefoxDriver();
d.manage().window().maximize();
d.get("http://iarouse.com/demo/index.html?product=square");
WebDriverWait wait = new WebDriverWait(d, 20);
wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("html/body/div[1]/div[1]/aside/div/div/ul/li[2]/a"))).click();
//d.findElement(By.xpath("html/body/div[1]/div[1]/aside/div/div/ul/li[2]/a")).click();
}
}
Run Code Online (Sandbox Code Playgroud)
我认为它无法找到该元素,因为在angularjs中dom不会渲染.当我检查页面源它没有显示任何东西被隐藏后对angularjs测试做一些研究我有几个问题请帮助,
用于Angular App测试.
请帮忙,
提前致谢.
我正在用Protractor测试我的Angular应用程序.我查看了文档,找不到任何方法来获取警报文本.这不是DOM本身的一个元素(至少,不是我能弄明白的;当有警报时,Chrome的检查员将不允许你检查它).我如何测试警报是否有正确的消息?或者甚至,那个存在?
这是我的代码.HTML:
<button id='alertButton' data-ng-click='ngAlert()'>Button</button>
Run Code Online (Sandbox Code Playgroud)
JS:
$scope.ngAlert = function(){
window.alert('Hello');
};
Run Code Online (Sandbox Code Playgroud)
量角器规格:
describe('alert', function(){
var ptor = protractor.getInstance();
beforeEach(function(){
button = $('#alertButton');
button.click();
});
it('tells the alert message', function(){
expect(button.getText()).toEqual('Button');
});
});
Run Code Online (Sandbox Code Playgroud)
当我对按钮文本进行断言时,如下所示:
it('tells the alert message', function(){
expect(button.getText()).toEqual('Button');
});
Run Code Online (Sandbox Code Playgroud)
它过去了.但是,如果我尝试读取这样的警报:
it('tells the alert message', function(){
var alertDialog = ptor.switchTo().alert();
expect(alertDialog.getText()).toEqual('Hello');
});
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
$量角器规格/ E2E/conf.js使用硒服务器的 HTTP://本地主机:4444/WD /集线器 .F
失败:
1)警告告诉警报消息消息:NoSuchAlertError:没有警报打开(会话信息:chrome = 30.0.1599.101)(驱动程序信息:chromedriver = 2.2,平台= Mac OS X 10.9.0 x86_64)(警告:服务器未提供任何堆栈跟踪信息)命令持续时间或超时:3毫秒构建信息:版本:'2.35.0',修订版:'c916b9d',时间:'2013-08-12 15:42:01'系统信息:os.name:' Mac OS X',os.arch:'x86_64',os.version:'10 .9',java.version:'1.6.0_65'会话ID:edbaa752eb14ad45f7e961903b69a466驱动程序信息:org.openqa.selenium.chrome.ChromeDriver Capabilities [{platform = …
我使用Protractor @ 1.7.0和appium来自动化iOS Hybrid应用程序.我在执行测试时一直收到Timeout错误.好心提醒.
Config.js
exports.config = {
allScriptsTimeout: 50000 ,
getPageTimeout: 50000 ,
seleniumAddress: 'http://localhost:4723/wd/hub',
specs: ['PageObjectSpec.js'],
capabilities: {
browserName: 'iOS' ,
'appium-version':'1.3.4',
platformName:'iOS' ,
platformVersion: 7.1 ,
deviceName:'iPhone' ,
autoWebview:true ,
},
baseUrl: 'http://localhost:8100',
jasmineNodeOpts: {showColors: true, defaultTimeoutInterval:50000} ,
};
Run Code Online (Sandbox Code Playgroud)
TestSpec.js:
'use strict';
describe('Abbvie app test', function()
{
var userName = element(by.model('credentials.username'));
var passwd = element(by.model('credentials.password'));
var signin = element(by.buttonText('Sign In'));
var name="patientqq" ;
var pass="Healthy1" ;
it('Login Page test', function()
{
userName.click()
userName.sendKeys(name)
passwd.click()
passwd.sendKeys(pass)
signin.click()
}); …Run Code Online (Sandbox Code Playgroud) 我正在尝试访问ng-repeat元素的子元素,但是这样做很麻烦。
我到处搜索了有关问题,发现的解决方案对我不起作用。这些解决方案之一是执行以下操作:
var parent = element(by.repeater(''));
var child = parent.element(by.....);
Run Code Online (Sandbox Code Playgroud)
当我尝试该child行时,看不到父元素上的元素函数。
http://prikachi.com/images/11/8338011u.png
如果您看到上面的屏幕截图,您将看到我要测试的页面代码的结构。
我需要访问头像图像的alt属性,并获取其值(即用户的用户名)。
我想到的一件事是.getInnerHTML()在ng-repeat行上使用,它将返回包含所有代码的字符串。从那里可以alt通过字符串操作找到该属性及其值,但这似乎太过残酷了,我相信必须有更好的方法。
我只是想能够从转发器中获取第4行,并在第4行中获取用户的用户名,这正是我实际上想要做的。
如果我想使用implicitlyWait,我应该browser.manage().timeouts().implicitlyWait(5000);
在哪里进行测试?
protractor ×8
angularjs ×7
javascript ×7
jasmine ×5
selenium ×5
java ×2
api ×1
appium ×1
automation ×1
ios ×1
openssl ×1
python ×1
typescript ×1
wait ×1
webdriver ×1
webdriverjs ×1