59 lines
1.6 KiB
Dart
59 lines
1.6 KiB
Dart
import 'dart:async';
|
|
import 'dart:io' show Platform;
|
|
import 'package:guinness/guinness.dart';
|
|
import 'package:benchpress/benchpress.dart';
|
|
import 'package:benchpress/src/webdriver/async_webdriver_adapter.dart';
|
|
import 'package:webdriver/webdriver.dart' show WebDriver, Capabilities, LogType, LogLevel, By;
|
|
|
|
main() {
|
|
describe('benchpress', () {
|
|
WebDriver driver;
|
|
Runner runner;
|
|
|
|
beforeEach(() async {
|
|
driver = await createTestDriver();
|
|
await driver.get('http://localhost:8002/examples/src/benchpress/index.html');
|
|
|
|
var bindings = [
|
|
bind(WebDriverAdapter).toFactory(() => new AsyncWebDriverAdapter(driver), [])
|
|
];
|
|
runner = new Runner(bindings);
|
|
});
|
|
|
|
afterEach(() async {
|
|
await driver.close();
|
|
});
|
|
|
|
it('should work', () {
|
|
return runner.sample(
|
|
id: 'benchpress smoke test',
|
|
execute: () async {
|
|
var button = await driver.findElement(const By.tagName('button'));
|
|
await button.click();
|
|
var logText = await (await driver.findElement(const By.id('log'))).text;
|
|
expect(logText, 'hi');
|
|
}
|
|
);
|
|
});
|
|
});
|
|
}
|
|
|
|
Future<WebDriver> createTestDriver() {
|
|
Map env = Platform.environment;
|
|
return WebDriver.createDriver(desiredCapabilities: {
|
|
'name': 'Dartium',
|
|
'browserName': 'chrome',
|
|
'chromeOptions': {
|
|
'binary': env['DARTIUM_BIN'],
|
|
'args': ['--js-flags=--expose-gc'],
|
|
'perfLoggingPrefs': {
|
|
'traceCategories': 'blink.console,disabled-by-default-devtools.timeline'
|
|
},
|
|
},
|
|
'loggingPrefs': {
|
|
'performance': 'ALL',
|
|
'browser': 'ALL',
|
|
}
|
|
});
|
|
}
|