发布新日志

  • How to use assertEquals(casper js )?

    2014-11-07 15:39:49

    Sample
     
    casper.wait(6000, function() {
        casper.test.comment('click on settings 2');
        casper.echo(this.getHTML('p.item-time-viewed'));
        casper.echo(casper.fetchText('p.item-time-viewed'));
        casper.echo(casper.fetchText('p#setting-LegalAspects-UBSewmBasicConditionsText'));
        casper.log('Verify date formate for UBS e-WM');
        casper.test.assertEquals(casper.fetchText('p#setting-LegalAspects-UBSewmBasicConditionsText'),'  UBS e-WM Basic Conditions (Nov 2014)');
        casper.log('Verify date formate for Accepted');
        casper.test.assertEquals(this.getHTML('p.item-time-viewed'), ' Accepted: 01 Nov 2014 22:15:06');
  • How to find document for casperjs

    2014-11-05 18:02:04

    http://casperjs.readthedocs.org/en/latest/installation.html  

    Step1 based on above link to install the tool 
    Step2: 



  • CasperJS 轻量级测试自动化

    2014-11-05 17:59:08

    Sample code 


    01.js file 
    //var url='http://localhost:8080/F81_EwmFrontendWebClient';
    var url = 'http://localhost:8080/F81_EwmFrontendWeb-DEMO/#/';
    var username='DEMO1';




    loginModule = require("login");
    //casper.options.logLevel = 'debug'; //60 seconds for each step to complete it self.
    // casper.options.verbose = true;

    casper.test.begin('test goto myWealth page', 1, function suite(test) {

    casper.start(url, function() {


    this.echo(url);
    this.echo(this.getTitle());
            this.test.assertTitle('UBS Beta');

    loginModule.doLogin(username);

    // your test code beign
    loginModule.doNavTo(username,'myWealth');


    });

    })

    casper.run(function() {
    this.test.done(); // I must be called once all the async stuff has been executed
    this.test.renderResults(true, 0, 'log-02.xml');

    });

    common function 
    login.js file
    var require = patchRequire(require);

    function doLogin(username) {


        console.log(username);

        casper.then(function() {
            console.log('begin to login as user :' + username);
            casper.waitForSelector('input[name="loginID"]', function() {

                casper.test.comment('do login');


                this.sendKeys('input[name="loginID"]', username);

                this.capture('screenshots/' + username + '/01-login.png', {
                    top: 0,
                    left: 0,
                    width: 1024,
                    height: 768
                });

                this.click('button#viewLogin-loginButton');


            });
        });

        casper.wait(1000, function() {


            if (casper.exists('p#view2faLogin-insutruction')) { //DEMO USER SKIP THIS


                casper.waitForSelector('p#view2faLogin-insutruction', function() {

                    casper.test.comment('do faLogin access card');


                    this.echo(this.getHTML('p#view2faLogin-insutruction'));
                    this.sendKeys('input#view2faLogin-accessCode1', '12');
                    this.sendKeys('input#view2faLogin-accessCode2', '34');
                    this.sendKeys('input#view2faLogin-accessCode3', '56');
                    this.sendKeys('input#view2faLogin-accessCode4', '78');

                    this.capture('screenshots/' + username + '/02-acesss-card.png', {
                        top: 0,
                        left: 0,
                        width: 1024,
                        height: 768
                    });


                    this.click('button#view2faLogin-clickLogin');


                });


            }



        });

        casper.wait(1000, function() {



            //this.echo(this.getHTML('div#elag_content_zone'));


            this.capture('screenshots/' + username + '/03-agrrentment.png', {
                top: 0,
                left: 0,
                width: 1024,
                height: 768
            });


            this.click('button#ElagButton-accept');
            casper.test.comment('do accept agrrentment');



        });

        casper.wait(10000, function() {


            this.echo(this.getCurrentUrl());


            if (casper.visible('button.buttonupdate')) {

                this.capture('screenshots/' + username + '/05-homepage-update.png', {
                    top: 0,
                    left: 0,
                    width: 1024,
                    height: 768
                })

                this.click('button.buttonupdate');
                casper.test.comment('do close update');


            }
            if (casper.exists('label#skipVirtualTour')) {

                this.capture('screenshots/' + username + '/05-1-VirtualTour.png', {
                    top: 0,
                    left: 0,
                    width: 1024,
                    height: 768
                })

                this.click('label#skipVirtualTour');
                casper.test.comment('do close VirtualTour');


            }



        });

        casper.wait(1000, function() {


            if (casper.visible('div.demo-window')) {

                this.capture('screenshots/' + username + '/05-2-homepage-with-tips.png', {
                    top: 0,
                    left: 0,
                    width: 1024,
                    height: 768
                })

                this.click('div.demo-close-button');
                casper.test.comment('do close homepage tips');


            }



        })

        casper.wait(10000, function() {

            this.capture('screenshots/' + username + '/05-homepage.png', {
                top: 0,
                left: 0,
                width: 1024,
                height: 768
            });


        })
    }


    exports.doLogin = doLogin;


    function doNavTo(username, pageID) {
        var nav_id;

        switch (pageID) {
            case 'settings':

                nav_id = 'settings';

                break;
            case 'myWealth':

                nav_id = 'myWealth';

                break;
            case 'help':

                nav_id = 'help';

                break;

        }

        casper.wait(1000, function() {
            casper.test.comment('nav  to pageID:' + pageID);
            this.click('span#menuIcon');

        });



        casper.waitForSelector('common-mainmenu-item#' + nav_id, function() {


            this.click('common-mainmenu-item#' + nav_id + '>li');


            // this.capture('screenshots/' + username + '/06-homepage-submenu.png', {
            //     top: 0,
            //     left: 0,
            //     width: 1024,
            //     height: 768
            // });



        })


        casper.wait(6000, function() {

            this.echo(this.getCurrentUrl());


            this.capture('screenshots/' + username + '/' + nav_id + '.png', {
                top: 0,
                left: 0,
                width: 1024,
                height: 768
            });


        })


        //body end

    }

    exports.doNavTo = doNavTo;

Open Toolbar