我这样做了:
ng new typescript-selenium-example npm install selenium-webdriver --save
(另外我已经将chromedriver复制到我的/ Application)
将app.component.ts更新为:
import { Component } from '@angular/core'; import { Builder,By,until } from 'selenium-webdriver'; @Component({ selector: 'app-root',templateUrl: './app.component.html',styleUrls: ['./app.component.css'] }) export class AppComponent { constructor() { var driver = new Builder() .forBrowser('chrome') .build(); driver.get('http://www.google.com/ncr') .then(_ => driver.findElement(By.name('q')).sendKeys('webdriver')) .then(_ => driver.findElement(By.name('btnG')).click()) .then(_ => driver.wait(until.titleIs('webdriver - Google Search'),1000)) .then(_ => driver.quit()); console.log('hi'); } title = 'app works!'; }
得到错误:
ERROR in ./~/selenium-webdriver/net/portprober.js Module not found: Error: Can't resolve 'child_process' in '/Users/myname/tmp/typescript-selenium-example/node_modules/sele nium-webdriver/net' @ ./~/selenium-webdriver/net/portprober.js 20:11-35 @ ./~/selenium-webdriver/chrome.js @ ./~/selenium-webdriver/index.js @ ./src/app/app.component.ts @ ./src/app/index.ts @ ./src/main.ts @ multi main ERROR in ./~/selenium-webdriver/firefox/binary.js Module not found: Error: Can't resolve 'child_process' in '/Users/myname/tmp/typescript-selenium-example/node_modules/sele nium-webdriver/firefox' @ ./~/selenium-webdriver/firefox/binary.js 25:14-38 @ ./~/selenium-webdriver/firefox/index.js @ ./~/selenium-webdriver/index.js @ ./src/app/app.component.ts @ ./src/app/index.ts @ ./src/main.ts @ multi main ERROR in ./~/selenium-webdriver/io/exec.js Module not found: Error: Can't resolve 'child_process' in '/Users/myname/tmp/typescript-selenium-example/node_modules/sele nium-webdriver/io' @ ./~/selenium-webdriver/io/exec.js 20:21-45 @ ./~/selenium-webdriver/remote/index.js @ ./~/selenium-webdriver/index.js @ ./src/app/app.component.ts @ ./src/app/index.ts @ ./src/main.ts @ multi main