Skip to main content

Angularjs protractor e2e test

Was trying to figure out how to do testing on angularjs and i found that there are different ways to do testing, one of which is e2e or end to end testing. With e2e angularjs uses protractor. Here is how i got it working

Installation (i used global install on mac osx)
sudo npm install -g protractor
sudo webdriver-manager update

on your test director copy the reference configuration
cp /usr/local/lib/node_modules/protractor/referenceConf.js protractor-conf.js

Go inside the protractor-conf.js and change the following
{
    chromeDriver: '/usr/local/lib/node_modules/protractor/selenium/chromedriver',
    chromeOnly: true,
    baseUrl: 'http://...url of your project...',
    specs: [
        'e2e/*.js',
    ],
}

as you could see i changed the specs to look at a folder called e2e, what i did is create an e2e folder with a loginSpec.js where i have
describe('Login Page', function() {
    var ptor;

    beforeEach(function() {
        ptor = protractor.getInstance();
        ptor.ignoreSynchronization = true;
    });

    it('should load the home page', function() {
        ptor.get('/login');
        var ele = by.id('login-page');
        expect(ptor.isElementPresent(ele)).toBe(true);
    });

});
then to run it i used on command line
protractor ./tests/protractor-conf.js
Then wait for a few seconds, it should tell you if you have failed test or not

Resources
Practical End-to-End Testing with Protractor

Comments

Popular posts from this blog

Unlockd Android Auto Open

Now that Unlockd has reached its doomed. Here is a script where i just downloaded android tools and automatically have my phone open, I believe you can use this for games that requires constant tapping of the screen (as long as it's not one of the fast tap one as adb has a delay). for i in `seq 1 50`; do # open the phone adb shell input keyevent 26 # keep the phone open for 8 seconds sleep 8 # close the phone adb shell input keyevent 26 # randomised sleep to make it look real sleep $[ ( $RANDOM % 10 ) + 1 ]s done if your phone has passcode for i in `seq 1 50`; do adb shell input keyevent 26 sleep 1 # swipe from bottom to up adb shell input touchscreen swipe 530 1280 1030 480 # enter your passcode adb shell input text <Your passcode> # check button adb shell input keyevent 66 sleep 8 adb shell input keyevent 26 sl…

How to disable textfield on AS3

This took me 2 hours to find out how to disable textfield on AS3, its not the perfect solution but it seems to be the only solution.

private var txtField:Textfield;
...
this.txtField = this.getChildByName("txtField");
this.txtField.mouseEnabled = false;
this.txtField.tabEnabled = false;

and to turn it enable again:
this.txtField.mouseEnabled = true;
this.txtField.tabEnabled = true;

You could also do this
//disable input
myTextField.selectable = false;
myTextField.type = TextFieldType.DYNAMIC;

//enable input
myTextField.selectable = true;
myTextField.type = TextFieldType.INPUT;


While this sound cheap coz you have to disable the mouse and the tab of that component and not the component itself, it seems to be the only solution. Thanks Adobe!!!!!!!!