我在Linux下使用Selenium 2(Web Driver)和FireFoxDriver.
我无法使用坐标在WebElement或其他可能的位置上执行右键单击.我也无法移动鼠标指针.
我试图使用"Actions"对象:
Actions actions = new Actions(ffDriver);
WebElement we = ffDriver.findElement(By.linkText("WhatEver"))
actions.contextClick(we).build().perform();
Run Code Online (Sandbox Code Playgroud)
我也尝试使用"鼠标"对象:
Mouse mouse = ((HasInputDevices)ffDriver).getMouse();
mouse.contextClick(we.getCoordinates());
Run Code Online (Sandbox Code Playgroud)
这些代码不会失败,但它们不会做任何事情.
但是,如果我在上面的两个示例中执行常规单击,它将按预期工作.
有人知道这有什么问题吗?
谢谢.
我正在使用 Selenium 进行自动化测试。有什么区别
java -jar selenium-server-standalone-2.24.1.jar -role hub
Run Code Online (Sandbox Code Playgroud)
和
java -jar selenium-server-standalone-2.24.1.jar -role webdriver
Run Code Online (Sandbox Code Playgroud)
?
好像是一样的。或者有什么区别?
我正在尝试在VS2012中为MVC站点进行Web测试.其中一个方案是登录并浏览产品列表,选择所需产品并按照购买页面进行操作.
问题是,当运行Web测试时,我收到有关防伪标记的错误,并且它不匹配.
如何用防伪令牌进行测试呢?用户必须登录 - 将有数千名用户进行负载测试(最终),但需要首先使其适用于1位用户.
登录视图/操作在控制器的视图和验证中执行AntiForgeryToken.
任何建议和提示表示赞赏.
我记录的Web性能测试有几个"String body"字段,我需要在运行时从Web测试请求插件中修改它们的内容.
"String body"字段不能直接从字段的各个字段和子字段中获得PreRequestEventArgs.
如何将"String body"字段读出来string并在修改之后将其写回?
我的测试包括根据当前日期(使用dayjs())设置日期的步骤。我需要始终获得相同的预定义日期。
dayjs() 调用new Date(),所以我的方法是模拟全局Date()构造函数。我试过这样:
await t.eval( () => {
const fixedDate = new Date(2010, 0, 1);
Date = class extends Date {
constructor() {
super();
return fixedDate;
}
};
});
Run Code Online (Sandbox Code Playgroud)
像这样,testcafe 无法完成eval(尽管在我的 Chrome 中有效)。到目前为止,我只设法Date.now()直接覆盖,而不是构造函数。
我想知道修改Datewitheval的方法是否是正确的方法,或者是否有更好的解决方案来固定当前的Date.
我正在尝试编写一个测试下载作品,该作品需要检查xhr响应的状态是否为READY。我使用诺言在TestCafe中创建了一个客户端函数,但是在递归的情况下失败了。
我应该如何修复我的代码来处理这种情况?
PS为新手问题道歉,我刚刚开始自动化测试之旅。
fixture`Download report works`
test
.requestHooks(logger)//connected a request hook, will wait for logger request
('I should be able to download PDF report from header of the page', async t => {
//recursively check if response status is READY, and then go to assertions
const waitForDownloadResponseStatus = ClientFunction((log) => {
return new Promise((resolve,rejects)=>{
const waitForStatus=()=>{
const arrayFromResponse = JSON.parse(log.response.body);
const responseStatus = arrayFromResponse.status;
if (responseStatus == 'READY')
{
resolve(responseStatus);
}
else {
waitForStatus();
}
}
waitForStatus();
})
});
//page …Run Code Online (Sandbox Code Playgroud) 我买不起iOS设备,但用户报告我,我的网站存在一些问题,移动设备的底部导航固定栏iOS位于底部,因此我如何在设备上查看我的网站,iOS以便修理它。
我正在创建一个使用 [chromedp][1] 的应用程序
如何检查页面中是否存在某个元素?
我尝试使用cdp.WaitVisible(),但它没有给我我想要的东西。
我需要这个,这样我就可以判断应用程序是否会做一件事或另一件事。
对于这个例子,假设我需要知道搜索输入是否存在
我怎样才能做到这一点?
[1]: https: //github.com/knq/chromedp
package main
import (
"context"
"fmt"
"io/ioutil"
"log"
"time"
cdp "github.com/knq/chromedp"
cdptypes "github.com/knq/chromedp/cdp"
)
func main() {
var err error
// create context
ctxt, cancel := context.WithCancel(context.Background())
defer cancel()
// create chrome instance
c, err := cdp.New(ctxt, cdp.WithLog(log.Printf))
if err != nil {
log.Fatal(err)
}
// run task list
var site, res string
err = c.Run(ctxt, googleSearch("site:brank.as", "Easy Money Management", &site, &res))
if err != nil { …Run Code Online (Sandbox Code Playgroud) 我有一个简单的代码,其结构如下所示:
<div>
<style>label { property: value; }</style>
<label id="id1">text</label>
</div>
Run Code Online (Sandbox Code Playgroud)
我的目标是断言 css 属性是否等于 not 的值。
我尝试过像这样使用 getStyleProperty :
const sel = Selector('#id1').getStyleProperty('property')
Run Code Online (Sandbox Code Playgroud)
但是,它总是返回未定义的值,有什么我想念的吗?
web-testing ×10
e2e-testing ×3
testcafe ×3
selenium ×2
android ×1
css ×1
date ×1
go ×1
ios ×1
javascript ×1
load-testing ×1
right-click ×1
web ×1
webtest ×1