我遇到了在CircleCi上运行的chrome驱动程序的问题.问题是运行时:
./node_modules/.bin/webdriver-manager update
Run Code Online (Sandbox Code Playgroud)
然后使用以下命令检查chromedriver和selenium的版本:
ls -lt node_modules/protractor/selenium
Run Code Online (Sandbox Code Playgroud)
它显示了最新版本:
selenium-server-standalone-2.45.0.jar
chromedriver
chromedriver_2.15.zip
Run Code Online (Sandbox Code Playgroud)
根据npm.taobao.org的说明, ChromeDriver 2.15版支持Chrome v40-43.但是CicleCi 文档说它使用Chrome版本38.0.因此,我需要使用与Chrome v38.0兼容的ChromeDriver v2.13.我的问题是,如何强制webdriver-manager使用ChromeDriver v2.13而不是最新版本.
我正在使用它Redux作为视图层的Flux替代方案React.我的应用程序React和Redux方法绑定react-redux connect().运行应用程序时,它会在组件安装时调度操作,并且redux返回正确的状态.但是redux-logger,在检查this.props.session它时,组件中存储已使用新状态更新的控制台中的日志仍显示旧状态.我猜我没有connect正确使用该方法,但我也无法用它来定义问题.有没有人知道最新情况?
容器/应用
'use strict';
import React from 'react';
import {connect} from 'react-redux';
import {fetchUserSession} from 'actions/SessionActions';
class App extends React.Component {
constructor(props) {
super(props);
}
componentWillMount() {
const {dispatch, session} = this.props;
dispatch(fetchUserSession());
console.log(session);
// logs:
// Object {currentUserId: null, errorMessage: null, isSessionValid: null}
// store is bound to window, and the initial state is ImmutabeJS object
console.log(window.store.getState().session.toJS());
// logs:
// …Run Code Online (Sandbox Code Playgroud) 任何人都可以告诉我如何将css类分配给选择值.我想用小图像改变每个选项的背景,那么我怎么能用wtforms和css做呢?
class RegisterForm(Form):
username = TextField('username', [validators.Length(min=3, max=50), validators.Required()])
img_url = SelectField('avatar',
choices=[('static/images/avatars/1.jpg', '1'),
('static/images/avatars/2.jpg', '2'),
('static/images/avatars/3.jpg', '3'),
('static/images/avatars/4.jpg', '4'),
('static/images/avatars/5.jpg', '5'),
('static/images/avatars/6.jpg', '6'),
('static/images/avatars/7.jpg', '7'),
('static/images/avatars/8.jpg', '8'),
('static/images/avatars/9.jpg', '9'),
('static/images/avatars/10.jpg','10')])
Run Code Online (Sandbox Code Playgroud) 我有一个自我引用的邻接列表关系,我创建了以下SqlAlchemy文档.该模型看起来像:
class Menu(db.Model):
id = db.Column(db.Integer, primary_key = True)
title = db.Column(db.String(255))
ordering = db.Column(db.SmallInteger, default = '1')
parent_id = db.Column(db.Integer, db.ForeignKey('menu.id'))
children = db.relationship("Menu",
cascade="all, delete-orphan",
backref = db.backref('parent', remote_side=[id]),
collection_class = attribute_mapped_collection('id'))
Run Code Online (Sandbox Code Playgroud)
我真正想要的是对该模型进行查询并获取如下数据:
root --+---> child1
+---> child2 --+--> subchild1
| +--> subchild2--+--> and so on,
| +--> and so on, if exists
+---> child3 --+--> subchild1
+--> ...
+--> ...
+--> ...
Run Code Online (Sandbox Code Playgroud)
将用以下数据表示:
id parent_id title
--- ------- ----
1 NULL root
2 1 child1
3 1 …Run Code Online (Sandbox Code Playgroud) 让我说我有<input name="upload" type="file">,我正在上传picture.jpg.问题是我如何获得文件名+扩展名?换句话说,request.files.filename或者正确的脚本request.upload.filename
我使用protractor与mocha在react应用程序.尝试使用before()或after()功能时,它给我一个错误:
ReferenceError: before is not defined
Run Code Online (Sandbox Code Playgroud)
然而,使用beforeEach()或afterEach()工作完全正常.
这是我配置的方式 protractor.conf.js
exports.config = {
capabilities: {
browserName: 'chrome'
},
frameworks: ['mocha', 'chai'],
onPrepare: function() {
browser.ignoreSynchronization = true;
}
};
Run Code Online (Sandbox Code Playgroud)
PS.完整错误:
Stacktrace:
ReferenceError: before is not defined
at [object Object].<anonymous> (/myApp/tests/e2e/routes.js:10:5)
at normalLoader (/myApp/node_modules/babel-core/lib/babel/api/register/node.js:160:5)
at Object.require.extensions.(anonymous function) [as .js] (/myApp/node_modules/babel-core/lib/babel/api/register/node.js:173:7)
at require (module.js:380:17)
at Function.promise (/myApp/node_modules/protractor/node_modules/q/q.js:650:9)
at _fulfilled (/myApp/node_modules/protractor/node_modules/q/q.js:797:54)
at self.promiseDispatch.done (/myApp/node_modules/protractor/node_modules/q/q.js:826:30)
at Promise.promise.promiseDispatch (/myApp/node_modules/protractor/node_modules/q/q.js:759:13)
at /myApp/node_modules/protractor/node_modules/q/q.js:525:49
at …Run Code Online (Sandbox Code Playgroud) 我有一个带有选择字段的简单表单。问题是该值使用西里尔字母。像下面这样:
class Add_menu_form(Form):
title = TextField('Title', [validators.Length(min=1, max=250), validators.Required()])
menu_type = SelectField('Menu type',
choices=[('simple', '???????'),
('blog', '????'),
('products', '?????????')])
Run Code Online (Sandbox Code Playgroud)
当我运行应用程序时,它给了我一个错误:
SyntaxError: Non-ASCII character '\xd0' in file /home/app/admin/forms.py
on line 26, but no encoding declared;
see http://www.python.org/peps/pep-0263.html for details
Run Code Online (Sandbox Code Playgroud)
你能告诉我克服它的最简单方法吗?谢谢
flask ×3
python ×3
protractor ×2
reactjs ×2
css ×1
e2e-testing ×1
filenames ×1
forms ×1
javascript ×1
mocha.js ×1
redux ×1
selenium ×1
sqlalchemy ×1
wtforms ×1