如果项目使用 Cucumber 和页面对象模型,那么填写包含大量文本输入的 Web 表单的最佳方法是什么?
例如,假设特征文件是这样的:
Scenario: As someone who wants to sign up
When I visit the homepage
And I click on the Register button
And I enter my firstname
And I enter my surname
And I enter my email address
And I enter a new password
And I re-enter my new password
And I agree to the terms and conditions
And I click the Submit button
Then I should see a welcome page
Run Code Online (Sandbox Code Playgroud)
我知道 Cucumber 生成的 step defs …
如果我有一个带有重载 operator++ 的类,例如:
在标题中:
SomeClass& operator++(int);
Run Code Online (Sandbox Code Playgroud)
执行:
SomeClass& SomeClass::operator++(int) { someLocalVar++; return this; }
Run Code Online (Sandbox Code Playgroud)
如果我然后SomeClass在一个实例化std::unique_ptr:
std::unique_ptr<SomeClass> someClass(new SomeClass());
Run Code Online (Sandbox Code Playgroud)
然后我想打电话给operator++some someClass,我使用:
someClass.get()->operator++(0);
Run Code Online (Sandbox Code Playgroud)
我知道我可以做这样的事情:
SomeClass *ptrSomeClass = someClass.release();
ptrSomeClass++;
Run Code Online (Sandbox Code Playgroud)
但这也很冗长,并且首先违背了使用的目的std::unique_ptr。
如果调用一个重载的更好的方法operator++有std::unique_ptr?
我有以下 Dart 程序:
import 'package:pedantic/pedantic.dart';
Future someFunc() async {
for (var i = 0; i < 100; i++) {
print('Value of i in someFunc(): ' + i.toString());
}
}
Future someOtherFunc() async {
for (var i = 0; i < 100; i++) {
print('Value of i in someOtherFunc(): ' + i.toString());
}
}
Future<int> main() async {
unawaited(someFunc());
unawaited(someOtherFunc());
print('End of program...');
return 0;
}
Run Code Online (Sandbox Code Playgroud)
当我执行这个时,输出是:
Value of i in someFunc(): 0
Value of i in someFunc(): 1
Value of …Run Code Online (Sandbox Code Playgroud)