protractor elementExplorer - angularjs

I'm trying to use protractor elementExplorer and not sure why I can't do it (I'm using Mac).
according to the documentation - http://angular.github.io/protractor/#/debugging I'm going to the protractor directory (use/local/bin) and type
node ./bin/elementexplorer.js
I'm getting the following error:
module.js:340
throw err;
^
Error: Cannot find module '/usr/local/bin/bin/elementexplorer.js'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:902:3
any help?
thanks.

You need to cd into the protractor directory:
cd node_modules/protractor
node ./bin/elementexplorer.js
where node_modules in your case should be under /usr/local/lib/.

If you have protractor installed globally as the docs at https://angular.github.io/protractor/#/ suggest you should be able to start protractor --elementExplorer anywhere and then issue commands such as browser.get('http://angular.github.io/protractor/#/ as per the api at https://angular.github.io/protractor/#/api
You can check your protractor install and version by doing protractor --version
Current verison is 3.0.0

Since you are already in protractor/bin directory try,
node elementExplorer.js
The best way to access elementExplorer is (if protractor installed globally):
protractor --elementExplorer
(If protractor installed in a specific folder), try:
Go to the specific folder, then:
node_modules/.bin/protractor --elementExplorer

If you are in Windows, try C:\Users\{username}\AppData\Roaming\npm\node_modules\protractor\bin
Here you can find elementexplorer.js
You can do node elementexplorer.js it will start selenium standalone server and it will open empty browser.. Here you can test your desired web page.

Related

Angular theme start

I have problem with starting Angular theme. I have installed everything on this planet, and that wont work.
When i start gulp serve in cmd , this is response:
D:\Kolokvijumi\blur-admin-master\blur-admin-master\node_modules>gulp serve
[21:07:45] Working directory changed to D:\Kolokvijumi\blur-admin-master\blur-ad
min-master
[21:07:46] Using gulpfile D:\Kolokvijumi\blur-admin-master\blur-admin-master\gul
pfile.js
[21:07:46] Starting 'scripts'...
[21:07:46] Starting 'styles'...
[21:07:46] Starting 'stylesAuth'...
[21:07:46] Starting 'styles404'...
[21:07:46] Starting 'copyVendorImages'...
D:\Kolokvijumi\blur-admin-master\blur-admin-master\node_modules\eslint\lib\eslin
t.js:706
throw ex;
^
TypeError: Error while loading rule 'react/display-name': ruleCreator is not a f
unction
at D:\Kolokvijumi\blur-admin-master\blur-admin-master\node_modules\eslint\li
b\eslint.js:692:28
at Array.forEach (native)
at EventEmitter.module.exports.api.verify (D:\Kolokvijumi\blur-admin-master\
blur-admin-master\node_modules\eslint\lib\eslint.js:671:16)
at processText (D:\Kolokvijumi\blur-admin-master\blur-admin-master\node_modu
les\eslint\lib\cli-engine.js:230:27)
at CLIEngine.executeOnText (D:\Kolokvijumi\blur-admin-master\blur-admin-mast
er\node_modules\eslint\lib\cli-engine.js:686:26)
at verify (D:\Kolokvijumi\blur-admin-master\blur-admin-master\node_modules\g
ulp-eslint\index.js:20:17)
at Transform._transform (D:\Kolokvijumi\blur-admin-master\blur-admin-master\
node_modules\gulp-eslint\index.js:38:18)
at Transform._read (_stream_transform.js:167:10)
at Transform._write (_stream_transform.js:155:12)
at doWrite (_stream_writable.js:334:12)
I installed eslint, npm, babel-eslint but didnt help..
A couple of suggestions:
1) since npm is kinda buggy, you should definitely try to wipe you node_modules folder and give an npm cache clean command. After that try reinstalling everything again with npm install
2) which version of Node are you using? There may be any compatibility issues with your current node version and the one needed by you modules. You should also have to try to use nvm to manage multiple node version on your system
--- EDIT (after the other answer) ---
Probably you need to (re)install ESLint Config Defaults module.

Why Will Protractor Webdriver Update Not Execute?

I am trying to use Protractor on a baseline run of the Angular Quickstart Seed.
However, when I run Protractor, or simply try to update the webdriver myself I get the following output:
[11:31:24] I/file_manager - creating folder C:\Users\davidtaylorjr\devbox\home\angula
r2-fundamentals\node_modules\protractor\node_modules\webdriver-manager\selenium
events.js:161
throw er; // Unhandled 'error' event
^
Error: unable to verify the first certificate
at TLSSocket.<anonymous> (_tls_wrap.js:1085:38)
at emitNone (events.js:86:13)
at TLSSocket.emit (events.js:186:7)
at TLSSocket._finishInit (_tls_wrap.js:603:8)
at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:433:38)
I have not modified any of the files and they are the files that are available in the Angular Quickstart
The software is having a conflict with current network settings and SSL Certificate Verification.
Protractor and Web-Driver have a way to deal with this by setting a flag on your update command. The command set should be as follows:
webdriver-manager update --ignore_ssl
This will allow you to update without being flagged with SSL errors.
This should only be used if other methods of working with SSL fails.
Webdriver-manager on update downloads some drivers/jars from the below sources. Looks like there is some issue during this. Can you manually download and verify if you are able to access the below url's
Sources: from webdriver-manager configs
"cdnUrls": {
"selenium": "https://selenium-release.storage.googleapis.com/",
"chromedriver": "https://chromedriver.storage.googleapis.com/",
"geckodriver": "https://github.com/mozilla/geckodriver/releases/download/",
"iedriver": "https://selenium-release.storage.googleapis.com/",
"androidsdk": "http://dl.google.com/android/"
}

Protractor / Selenium Webdriver : Runtime.executionContextCreated has invalid 'context'

I use protractor to test Angular2 app. It was working fine and I think I didn't change nothing in conf but now it ends up with this:
...
super(opt_error);
^
SessionNotCreatedError: session not created exception
from unknown error: Runtime.executionContextCreated has invalid 'context': {"auxData":{"frameId":"4012.1","isDefault":true},"id":1,"name":"","origin":"://"}
(Session info: chrome=54.0.2840.71)
(Driver info: chromedriver=2.21.371459
...
I work on a Mac OSX 10.11.4, Chrome 54.0.2840.71.
Any suggestion? Thanks
--- EDIT 26/10
Since it depends on each one settings it looks like theres no absolute answer to this. The main idea is to update protractor/ chromedriver / webdriver-manager accordingly.
Saying that i now face another problem : every basic test i do, including ( for instance ) a browser.get() is failing with :
Error: Timeout - Async callback was not invoked within timeout specified by jasmine.DEFAULT_TIMEOUT_INTERVAL
I don't know if it's an isolated case and if it fits here (I use jasmine2 as framework) so I start another question here
I installed ChromeDriver v2.24 and stored it in: /usr/local/Cellar/chromedriver/2.24/bin and it fixed the error for me.
As mentioned by others, looks like it is a problem with the chromedriver installed in the system with the new version of chrome. For mac, I updated the chromedriver using 'chromedriver-update' and this fixed it.
I had a similar problem and solver it by forcing chromedriver 2.24 to install by manually removing webdriver-manager
delete the folder rm -rf /usr/local/lib/node_modules/webdriver-manager/
reinstall webdriver
npm install -g webdriver-manager
I updated the selenium-standalone to the latest version 5.8.0 (from 5.1.0). It will install the newer version of chrome webdriver(2.25), instead of install chrome driver2.21. This solved the issue on my end.(no connection, session exception)
If even after updating the webdriver to 2.25, the error is still occurring and if you are using the terminal app this should help :
I managed to fix the issue by unchecking “Set locale environment variables on startup” checkbox in advanced terminal app settings.
Or try to launch your test with this prefix :
LC_NUMERIC=”en_US.UTF-8″ npm test

Protractor + CucumberJS Error after update: cucumber.js:150:36

I'm bringing this into discussion here, since I had started this conversation over GithubIssue 2630, Basically I'm having problems with the integration of Protractor and Cucumber, I had even tried to downgrade to a older versions for both but the same thing happens, here's an explanation of what I did so far:
I had uninstalled everything and started from scratch. I started by installing Protractor, Cucumber and Webdriver globally and I can see this error, same as before, when I run the protractor command.
$ protractor conf.js
Starting selenium standalone server...
[launcher] Running 1 instances of WebDriver
Selenium standalone server started at http://192.168.0.104:64737/wd/hub
[launcher] Error: TypeError: undefined is not a function
at /usr/local/lib/node_modules/protractor/lib/frameworks/cucumber.js:150:36
at Function.promise (/usr/local/lib/node_modules/protractor/node_modules/q/q.js:650:9)
at /usr/local/lib/node_modules/protractor/lib/frameworks/cucumber.js:147:14
at _fulfilled (/usr/local/lib/node_modules/protractor/node_modules/q/q.js:797:54)
at self.promiseDispatch.done (/usr/local/lib/node_modules/protractor/node_modules/q/q.js:826:30)
at Promise.promise.promiseDispatch (/usr/local/lib/node_modules/protractor/node_modules/q/q.js:759:13)
at /usr/local/lib/node_modules/protractor/node_modules/q/q.js:525:49
at flush (/usr/local/lib/node_modules/protractor/node_modules/q/q.js:108:17)
at process._tickCallback (node.js:355:11)
[launcher] Process exited with error code 100
```
Then I've installed all locally, running npm install, and I got this error
[launcher] Process exited with error code 1
/Users/brunosoko/Documents/Dev/Personal/test2/node_modules/protractor/node_modules/q/q.js:126
throw e;
^
Error: No selenium server jar found at the specified location (/Users/brunosoko/Documents/Dev/Personal/test2/node_modules/protractor/selenium/selenium-server-standalone-2.47.1.jar). Check that the version number is up to date.
at LocalDriverProvider.addDefaultBinaryLocs_ (/Users/brunosoko/Documents/Dev/Personal/test2/node_modules/protractor/lib/driverProviders/local.js:37:11)
at LocalDriverProvider.setupEnv (/Users/brunosoko/Documents/Dev/Personal/test2/node_modules/protractor/lib/driverProviders/local.js:71:8)
at Runner.run (/Users/brunosoko/Documents/Dev/Personal/olapic-test2/node_modules/protractor/lib/runner.js:261:31)
at TaskRunner.run (/Users/brunosoko/Documents/Dev/Personal/test2/node_modules/protractor/lib/taskRunner.js:123:19)
at createNextTaskRunner (/Users/brunosoko/Documents/Dev/Personal/test2/node_modules/protractor/lib/launcher.js:223:20)
at /Users/brunosoko/Documents/Dev/Personal/test2/node_modules/protractor/lib/launcher.js:246:7
at _fulfilled (/Users/brunosoko/Documents/Dev/Personal/test2/node_modules/protractor/node_modules/q/q.js:797:54)
at self.promiseDispatch.done (/Users/brunosoko/Documents/Dev/Personal/test2/node_modules/protractor/node_modules/q/q.js:826:30)
at Promise.promise.promiseDispatch (/Users/brunosoko/Documents/Dev/Personal/test2/node_modules/protractor/node_modules/q/q.js:759:13)
at /Users/brunosoko/Documents/Dev/Personal/test2/node_modules/protractor/node_modules/q/q.js:573:44
Which I resolved by installing locally webdriver ./node_modules/.bin/webdriver-manager update
Then I ran ./node_modules/.bin/protractor conf.js and I'm getting the same error as above, for cucumber.js:150:36
Later, I tried to uninstall globally framework, npm uninstall -g protractor and npm uninstall -g cucumber
But the same error happens! I'm not sure what am I doing wrong!
I'm not sure what is wrong with your specific situation, but I have created a bare minimum example of cucumber 0.8.1 working with the yet to be released version of protractor here - https://github.com/darrinholst/protractor-cucumber-example. Hope this helps.
git clone https://github.com/darrinholst/protractor-cucumber-example
cd protractor-cucumber-example
npm install
npm test

AnglularJS: Can Protractor run on Windows?

The angular doc recommends Protractor for e2etesting.
http://docs.angularjs.org/guide/dev_guide.e2e-testing
I didn't find any doc about running it on Windows.
Can Protractor run on Windows?
**
Update:
I have some experience on Selenium using C# code to call functions in some selenium dlls to control IE brower.
But what are the relationship between Protractor, Selenium and NodeJS?
Is Protractor an tool(exe) or a lib(dll) or a JS lib(like Jasmine)?
Yes, you can run it on windows.
I hope this guide will help you:
http://www.ng-newsletter.com/posts/practical-protractor.html
You should Start Selenium local server and use this basic configuration for run protractor (Depending routes):
chromeDriver: './node_modules/protractor/selenium/chromedriver',
specs: ['test/e2e/**/*_spec.js'],
chromeOnly: true,
chromeDriver: './node_modules/protractor/selenium/chromedriver',
seleniumAddress: 'http://0.0.0.0:4444/wd/hub'
Yes at least it should. It runs on node and node runs on windows. However sometimes projects have windows issues, the most common cause IMO is hardcoding of / etc.. If the library uses node path and similar os independent apis then all is fine.
I have ran protractor on windows without any issues. But not extensively.
Prerequisites & Installation:
Prerequisites
Node.js (Latest Version)
Download NodeJS
Install NodeJs
To test Node.Js installation properly open command prompt and execute the command.
Java Development Kit(JDK)
Download the JDK
Install JDK from
Installation
Install Protractor Globally
Open the command prompt and type following command to install protractor globally.
npm install -g protractor
This will install two command line tools, protractor and webdriver-manager. Try running below command to check protractor version.
protractor –version
The webdriver-manager is a helper tool to easily get an instance of a Selenium Server running. Use it to download the necessary binaries with:
webdriver-manager update
Now start up a server with:
webdriver-manager start

Resources