我正在尝试使用browserstack,selenium-webdriver和磁带设置自动前端测试.
我们的想法是定义多个浏览器和设备,这些浏览器和设备必须使用X量的给定测试一个接一个地进行测试.在下面的示例中,我在OSX上只定义了一个测试和两个浏览器.
为了只定义浏览器一次并处理测试,我创建了一个repo test-runner,应该添加dev-dependency到需要在给定设备和浏览器上测试的repos.在test-runner得到通过所有需要测试,开始第一个浏览器,运行于该浏览器的测试,一旦所有测试完成后关闭浏览器quit()和浏览器旁边被再次启动和测试.
测试亚军
/index.js
const webdriver = require( 'selenium-webdriver' )
// ---
// default browser configs
// ---
const defaults = {
"os" : "OS X",
"os_version" : "Mojave",
"resolution" : "1024x768",
"browserstack.user" : "username",
"browserstack.key" : "key",
"browserstack.console": "errors",
"browserstack.local" : "true",
"project" : "element"
}
// ---
// browsers to test
// ---
const browsers = [
{ …Run Code Online (Sandbox Code Playgroud) 我之前在 AWS Linux AMI 上有过这个工作,但在 AWS Linux 2 上没有运气。
我需要在 EB 应用程序部署期间从 Nginx 配置文件访问我的环境属性。它是一个单实例节点服务器。
我使用 AWS Linux AMI 是这样做的,并且没有问题:
.ebextensions/00_options.config
option_settings:
aws:elasticbeanstalk:application:environment:
DOMAIN: socket.example.com
MASTER_DOMAIN: https://example.com
etc..
Run Code Online (Sandbox Code Playgroud)
.ebextensions/10_proxy.config
... some configs ...
files:
/etc/nginx/conf.d/proxy.conf:
mode: "000644"
owner: root
group: root
content: |
upstream nodejs {
server 127.0.0.1:8081;
keepalive 256;
}
map $http_origin $cors_header {
hostnames;
default "";
`{"Fn::GetOptionSetting": {"Namespace": "aws:elasticbeanstalk:application:environment", "OptionName": "MASTER_DOMAIN"}}` "$http_origin";
}
server {
listen 80;
listen 8080;
server_name `{"Fn::GetOptionSetting": {"Namespace": "aws:elasticbeanstalk:application:environment", "OptionName": "DOMAIN"}}`;
location ~ /.well-known { …Run Code Online (Sandbox Code Playgroud) nginx environment-variables amazon-web-services amazon-elastic-beanstalk amazon-linux-2
我昨天刚开始使用d3.js,在完成工作时遇到一些麻烦。
现在,我创建了一个带有两个y轴的图表,每个y轴显示一些值,而x轴显示日期。
单击y轴上的值时,将显示相应的水平网格线。
我的问题是,当放大或缩小或拖动时,网格线(水平和垂直)不能随轴值正确缩放,它们根本不会移动。
今天下午我进行了很多搜索,找到了一些示例,但是似乎没有一个可以使用我已有的代码。
我认为,应该将逻辑添加到缩放行为中,但我不确定
// x axis gridlines
function make_x_gridlines() {
return d3.axisBottom(x)
.ticks(5)
}
// add the X gridlines
let xGrid = svg.append("g")
.attr('class', 'grid')
.attr("id", "grid")
.attr("transform", "translate(0," + height + ")")
.call(make_x_gridlines()
.tickSize(-height)
.tickFormat("")
)
//zoom behavior
function zoomed() {
.. some behavior ..
//redraw gridlines here?
.. some behavior ..
}
Run Code Online (Sandbox Code Playgroud)
请看整个小提琴。
我称第二个y轴(右)为zAxis,即使它不是z轴。
帮助将不胜感激。
我看到很多例子都在做同样的事情,但是这个d3.timeParse()函数在我的代码中没有按预期工作并返回null.
let parseDate = d3.timeParse("%Y-%m-%d");
let now = new Date();
console.log(now)//returns js date object
let parsedNow = parseDate(now);
console.log(parsedNow) //returns null
Run Code Online (Sandbox Code Playgroud)
通过运行示例看到这个小提琴.
任何想法我在这里做错了什么?
非常感谢帮助.
javascript ×3
d3.js ×2
asynchronous ×1
date-parsing ×1
gridlines ×1
loops ×1
nginx ×1
node.js ×1
node.js-tape ×1
zoom ×1