コード例 #1
0
ファイル: test_frames.py プロジェクト: AMITHSHAH/Test
def test_post_submit():
    client = WindmillTestClient(__name__)
    client.open(url='/windmill-unittests/static/frames.html')
    client.waits.forPageLoad(timeout=20000)
    client.click(link="Open page in bottom frame")
    client.asserts.assertText(validator='Success', id='result')
    client.asserts.assertText(validator='Should still be here', id='control')
コード例 #2
0
ファイル: test_post_submit.py プロジェクト: yileye/windmill
def test_get_submit():
    client = WindmillTestClient(__name__)
    client.open(url=u'http://tutorial.getwindmill.com/windmill-unittests/domain_switcher.html')
    client.type(text=u'simpletest', name=u'q')
    client.click(name=u'btnG')
    client.waits.forPageLoad(timeout=20000)
    client.waits.forElement(link=u'SimpleTest - Unit Testing for PHP', timeout=u'8000')
コード例 #3
0
def test_cancel_add_item():
    client = WindmillTestClient(__name__)

    client.click(id=u'additem_list_1')
    client.asserts.assertNode(id=u'add_to_begin_of_list_1')
    client.click(xpath=u"//li[@id='subscription_1']/ul/li/a[@title='cancel']")
    client.waits.forNotElement(timeout=u'20000', id=u'add_to_begin_of_list_1')
コード例 #4
0
def test_hidewhenCreated():
    client = WindmillTestClient(__name__)

    client.click(link=u'Contents')
    client.waits.forPageLoad(timeout=u'20000')
    client.waits.forElement(
        xpath=u"//a[contains(@href, 'testform/hidewhen1')]", timeout=u'8000')
コード例 #5
0
def test_post_submit():
    client = WindmillTestClient(__name__)
    client.open(url='/windmill-unittests/static/frames.html')
    client.waits.forPageLoad(timeout=20000)
    client.click(link="Open page in bottom frame")
    client.asserts.assertText(validator='Success', id='result')
    client.asserts.assertText(validator='Should still be here', id='control')
コード例 #6
0
def test_cancel_add_item():
    client = WindmillTestClient(__name__)

    client.click(id=u'additem_list_1')
    client.asserts.assertNode(id=u'add_to_begin_of_list_1')
    client.click(xpath=u"//li[@id='subscription_1']/ul/li/a[@title='cancel']")
    client.waits.forNotElement(timeout=u'20000', id=u'add_to_begin_of_list_1')
コード例 #7
0
ファイル: test_post_submit.py プロジェクト: yileye/windmill
def test_post_submit():
    client = WindmillTestClient(__name__)
    client.open(url=u'http://tutorial.getwindmill.com/windmill-unittests/domain_switcher.html')
    client.type(text=u'simpletest', name=u'search_theme_form')
    client.click(name=u'op')
    client.waits.forPageLoad(timeout=20000)
    client.waits.forElement(xpath="//div[@id='squeeze']/h1", timeout=8000)
    client.asserts.assertJS(js=u"windmill.testWin().document.title == 'Search | drupal.org'")
コード例 #8
0
ファイル: fold.py プロジェクト: jakob-stoeck/os_poker
def test_fold():
    client = WindmillTestClient(__name__)
    signup(client)
    client.click(id=u'play-now-button')
    client.waits.forElement(classname=u'jpoker_table')
    for i in range(100):
        client.click(classname=u'jpoker_ptable_fold')
        client.waits.sleep(milliseconds=5000)
コード例 #9
0
ファイル: test_more.py プロジェクト: Hitoki/ieee
def test_tags_page():
    client = WindmillTestClient('test_tags_page')

    client.open(url='/textui')
    client.waits.forPageLoad(timeout='8000')
    client.click(link='Continue to the Tags Interface...')
    client.waits.forPageLoad(timeout='20000')
    client.asserts.assertNode(id='tags')
コード例 #10
0
def test_601():
    client = WindmillTestClient(__name__)

    client.waits.forElement(timeout=u'30000', id=u'ext-gen96')
    client.click(id=u'ext-gen96')
    client.waits.forElement(timeout=u'30000', id=u'ext-gen167')
    client.check(xpath=u"//ul[@id='ext-gen167']/div/li[2]/div/input")
    client.check(xpath=u"//ul[@id='ext-gen167']/div/li[2]/div/input")
    client.asserts.assertText(validator=u'Communes', id=u'ext-comp-1090')
コード例 #11
0
def setup_module(module):
    client = WindmillTestClient('setup_module_login')

    client.type(text='test_admin', id='id_username')
    client.type(text='test_admin', id='id_password')
    client.click(value='Ok')
    client.waits.forPageLoad(timeout='20000')
    client.asserts.assertNode(link='Visual Map')
    client.asserts.assertNode(link='Textual')
コード例 #12
0
ファイル: test_601.py プロジェクト: Pedroo22/georchestra
def test_601():
    client = WindmillTestClient(__name__)

    client.waits.forElement(timeout=u'30000', id=u'ext-gen96')
    client.click(id=u'ext-gen96')
    client.waits.forElement(timeout=u'30000', id=u'ext-gen167')
    client.check(xpath=u"//ul[@id='ext-gen167']/div/li[2]/div/input")
    client.check(xpath=u"//ul[@id='ext-gen167']/div/li[2]/div/input")
    client.asserts.assertText(validator=u'Communes', id=u'ext-comp-1090')
コード例 #13
0
ファイル: test_lookups.py プロジェクト: ept/windmill
def test_recordingSuite0():
    client = WindmillTestClient(__name__, assertions=False)

    assert client.open(url=u'http://tutorial.getwindmill.com/windmill-unittests/unit_tester.html')['result']
    assert client.waits.forPageLoad(timeout=u'8000')['result']
    assert client.click(value=u'lookupByValue')['result']
    assert client.click(classname=u'lookupByClassname')['result']
    assert client.click(name=u'lookupByName')['result']
    assert client.click(id=u'lookupById')['result']
    assert client.click(jsid=u'jsNode()')['result']
    assert client.click(tagname=u'hr')['result']
コード例 #14
0
def test_recordingSuite0():
    client = WindmillTestClient(__name__, assertions=False)

    assert client.open(url=u'http://tutorial.getwindmill.com/windmill-unittests/unit_tester.html')['result']
    assert client.waits.forPageLoad(timeout=u'8000')['result']
    assert client.click(value=u'lookupByValue')['result']
    assert client.click(classname=u'lookupByClassname')['result']
    assert client.click(name=u'lookupByName')['result']
    assert client.click(id=u'lookupById')['result']
    assert client.click(jsid=u'jsNode()')['result']
    assert client.click(tagname=u'hr')['result']
コード例 #15
0
def test_tourney_join_fold():
    client = WindmillTestClient(__name__)
    username = functest.registry.get('username')
    password = functest.registry.get('password', username)
    login(client, username, password)
    #client.click(classname=u'close')
    client.waits.forElement(jquery=u'(".notify-text a")[0]')
    client.click(jquery=u'(".notify-text a")[0]')
    client.waits.forElement(classname=u'jpoker_table')
    for i in range(100):
        client.click(classname=u'jpoker_ptable_fold')
        client.waits.sleep(milliseconds=5000)
コード例 #16
0
def test_login():
    """Some parameters must be modified (user, password, Plone URL).
    """
    client = WindmillTestClient(__name__)

    client.click(link=u'View your Plone site.')
    client.waits.forPageLoad(timeout=u'20000')
    client.waits.forElement(timeout=u'8000', id=u'__ac_name')
    client.type(text=u'admin', id=u'__ac_name') # To replace with the corrects username and password
    client.type(text=u'password', id=u'__ac_password')
    client.click(name=u'submit')
    client.waits.forPageLoad(timeout=u'20000')
コード例 #17
0
def test_createField():
    client = WindmillTestClient(__name__)

    client.click(link=u'Edit')
    client.waits.forPageLoad(timeout=u'20000')
    client.waits.forElement(xpath=u"//body[@id='content']", timeout=u'8000')
    client.click(xpath=u"//body[@id='content']")
    client.click(id=u'FormLayout_plominofield')
    client.waits.forElement(timeout=u'5000', id=u'plominoFieldId')
    client.type(text=u'field1', id=u'plominoFieldId')
    client.click(id=u'insert')
    client.click(name=u'form.button.save')
    client.waits.forPageLoad(timeout=u'20000')
コード例 #18
0
def test_createField():
    client = WindmillTestClient(__name__)

    client.click(link=u'Edit')
    client.waits.forPageLoad(timeout=u'20000')
    client.waits.forElement(xpath=u"//body[@id='content']", timeout=u'8000')
    client.click(xpath=u"//body[@id='content']")
    client.click(id=u'FormLayout_plominofield')
    client.waits.forElement(timeout=u'5000', id=u'plominoFieldId')
    client.type(text=u'field1', id=u'plominoFieldId')
    client.click(id=u'insert')
    client.click(name=u'form.button.save')
    client.waits.forPageLoad(timeout=u'20000')
コード例 #19
0
def activate_items():
  client = WindmillTestClient(__name__)
  #Names of items to buy and activate
  itemNames = ['Water', 'Coffee', 'Beer', 'Hot milk', 'Coffee to-go']
  login(client, 'root', 'root')
  #Store base URL
  client.storeVarFromJS(options=u"BaseUrl|window.location.href.replace(window.location.search, '')")
  #Go to Shop
  client.storeURL(link=u'Shop')
  client.open(url=u'{$Shop}')
  client.waits.forElement(id=u'items')
  #Buy items
  for itemName in itemNames:
    client.click(jquery=(u"('a[title=%s]')[0]" % itemName))
    client.click(jquery=u"('.poker_submit[onclick*=subtarget]')[0]")
  #Go to medium profile to extract item IDs
  client.open(url=u'{$BaseUrl}?q=poker/profile/medium')
  for itemName in itemNames:
    client.storeVarFromJS(options=(u'%sId|$("img[title=%s]").attr("id")' % (itemName, itemName)))
  #Go and sit to a table
  client.open(url=u'{$BaseUrl}')
  client.waits.forElement(classname=u'jpoker_table_list_table_empty')
  client.click(id=u'play-now-button')
  client.waits.forElement(classname=u'jpoker_table',timeout=u'20000')
  #Items activation using JS (couldn't get Windmill to select and click in the iframe)
  for itemName in itemNames:
    #Set item_id JS variable using a JS assertion because Windmill variables are not working in execJS
    client.asserts.assertJS(js=u'!isNaN(item_id = parseInt("{$%sId}"))' % itemName)
    client.execJS(js=u'os_poker_send_message({type:"os_poker_activate_item", id_item: item_id});')
    #Wait for the item to be received by the player
    client.waits.forElement(classname=u'poker_player_item poker_gift_%s' % itemName.replace(' ', '-'),timeout=u'7000')
  client.click(classname=u'logout')
コード例 #20
0
ファイル: __init__.py プロジェクト: visadb/ideaList
def setup_module(module):
    "Add items. Also test suggestion box."
    client = WindmillTestClient(__name__)

    def enter_item_text(text, ctrl=False):
        if ctrl:
            options = u'13,false,true,false,false,false'
        else:
            options = u'13,false,false,false,false,false'
        client.waits.forElement(xpath=u"//input[@class='additem']",
                                timeout=u'20000')
        client.type(xpath=u"//input[@class='additem']", text=text)
        client.keyUp(xpath=u"//input[@class='additem']", options=options)
        if not ctrl:
            client.waits.forNotElement(xpath=u"//input[@class='additem']",
                                       timeout=u'20000')

    client.asserts.assertNotNode(xpath=u"//input[@class='additem']")

    # 1st item to test list 1 (from list's additem button)
    client.asserts.assertNotNode(id=u'item_1')
    client.click(id=u'additem_list_1')
    enter_item_text('test item 1')
    client.waits.forElement(id=u"item_1", timeout=u'20000')

    # 2nd item to test list 1 (from item1's additem button)
    client.asserts.assertNotNode(id=u'item_2')
    client.click(xpath=u"//li[@id='item_1']/a[@title='Add item']")
    enter_item_text('test item 2')
    client.waits.forElement(id=u"item_2", timeout=u'20000')

    # 3rd item to test list 1 (from item1's additem button with ctrl)
    client.asserts.assertNotNode(id=u'item_3')
    client.click(xpath=u"//li[@id='item_1']/a[@title='Add item']")
    enter_item_text('test item 3', ctrl=True)
    client.waits.forElement(id=u"item_3", timeout=u'20000')

    # 4th item to test list 1 (with residual additem field from last one)
    client.asserts.assertNotNode(id=u'item_4')
    enter_item_text('test item 4')
    client.waits.forElement(id=u"item_4", timeout=u'20000')

    # 5th item to test list 2
    client.asserts.assertNotNode(id=u'item_5')
    client.click(id=u'additem_list_2')
    client.waits.sleep(milliseconds=u'50')
    client.asserts.assertJS(js=u"$('#suggestion_box').is(':hidden')")
    enter_item_text('test item 5')
    client.waits.forElement(id=u"item_5", timeout=u'20000')

    client.asserts.assertJS(
        js=u"$('#subscription_1 .item:nth(0)').attr('id') == 'item_1'")
    client.asserts.assertJS(
        js=u"$('#subscription_1 .item:nth(1)').attr('id') == 'item_4'")
    client.asserts.assertJS(
        js=u"$('#subscription_1 .item:nth(2)').attr('id') == 'item_3'")
    client.asserts.assertJS(
        js=u"$('#subscription_1 .item:nth(3)').attr('id') == 'item_2'")
    client.asserts.assertJS(
        js=u"$('#subscription_2 .item:nth(0)').attr('id') == 'item_5'")
コード例 #21
0
ファイル: test_minimize_list.py プロジェクト: visadb/ideaList
def test_minimize_list():
    client = WindmillTestClient(__name__)

    client.asserts.assertJS(js=u"$('#subscription_1 > .itemlist').is(':visible')")
    client.asserts.assertJS(js=u"$('#itemcount_subscription_1').is(':hidden')")
    client.click(id=u'minmax_subscription_1')
    client.waits.sleep(milliseconds=u'500')
    client.asserts.assertJS(js=u"$('#subscription_1 > .itemlist').is(':hidden')")
    client.asserts.assertJS(js=u"$('#itemcount_subscription_1').is(':visible')")
    client.asserts.assertJS(js=u'$(\'#itemcount_subscription_1 > .count\').html() == "0"')
    client.click(id=u'minmax_subscription_1')
    client.waits.sleep(milliseconds=u'500')
    client.asserts.assertJS(js=u"$('#subscription_1 > .itemlist').is(':visible')")
    client.asserts.assertJS(js=u"$('#itemcount_subscription_1').is(':hidden')")
コード例 #22
0
def test_login():
    """Some parameters must be modified (user, password, Plone URL).
    """
    client = WindmillTestClient(__name__)

    client.click(link=u'View your Plone site.')
    client.waits.forPageLoad(timeout=u'20000')
    client.waits.forElement(timeout=u'8000', id=u'__ac_name')
    client.type(
        text=u'admin',
        id=u'__ac_name')  # To replace with the corrects username and password
    client.type(text=u'password', id=u'__ac_password')
    client.click(name=u'submit')
    client.waits.forPageLoad(timeout=u'20000')
コード例 #23
0
def test_createHidewhen():
    client = WindmillTestClient(__name__)

    client.click(link=u'Edit')
    client.waits.forPageLoad(timeout=u'20000')
    client.waits.forElement(xpath=u"//body[@id='content']", timeout=u'8000')
    client.click(xpath=u"//body[@id='content']")
    client.click(id=u'FormLayout_plominohidewhen')
    client.waits.forElement(timeout=u'5000', id=u'hidewhenid')
    client.type(text=u'hidewhen1', id=u'hidewhenid')
    client.waits.forElement(timeout=u'5000', id=u'hidewhenFormula')
    client.type(text=u'False', id=u'hidewhenFormula')
    client.click(id=u'insert')
    client.click(name=u'form.button.save')
    client.waits.forPageLoad(timeout=u'20000')
コード例 #24
0
def test_createAction():
    client = WindmillTestClient(__name__)

    client.waits.forElement(link=u'Edit', timeout=u'8000')
    client.click(link=u'Edit')
    client.waits.forPageLoad(timeout=u'20000')
    client.waits.forElement(xpath=u"//body[@id='content']", timeout=u'8000')
    client.click(xpath=u"//body[@id='content']/p")
    client.click(xpath=u"//a[@id='FormLayout_plominoaction']/img")
    client.waits.forElement(timeout=u'5000', id=u'actionid')
    client.type(text=u'action1', id=u'actionid')
    client.select(val=u'CLOSE', id=u'actionTypesList')
    client.click(id=u'insert')
    client.click(name=u'form.button.save')
    client.waits.forPageLoad(timeout=u'20000')
コード例 #25
0
ファイル: fold.py プロジェクト: PKRG/jpoker
def test_fold():
    client = WindmillTestClient(__name__)

    client.waits.forElement(classname='jpoker_table')
    client.click(classname=u'jpoker_login_name')
    client.type(classname='jpoker_login_name', text=u'user%s' % md5(str(time())).hexdigest())
    client.click(classname=u'jpoker_login_password')
    client.type(classname=u'jpoker_login_password', text=u'password')
    client.click(classname=u'jpoker_login_submit')
    client.waits.forElement(classname='jpoker_logout')
    client.click(classname=u'jpoker_tablepicker_submit')
    for i in range(100):
        client.waits.forElement(jquery=u'(".jpoker_ptable_fold:visible")[0]', timeout=u'60000')
        client.click(classname=u'jpoker_ptable_fold')
        client.waits.forElement(jquery=u'(".jpoker_ptable_fold:hidden")[0]', timeout=u'60000')
コード例 #26
0
def test_createAction():
    client = WindmillTestClient(__name__)

    client.waits.forElement(link=u'Edit', timeout=u'8000')
    client.click(link=u'Edit')
    client.waits.forPageLoad(timeout=u'20000')
    client.waits.forElement(xpath=u"//body[@id='content']", timeout=u'8000')
    client.click(xpath=u"//body[@id='content']/p")
    client.click(xpath=u"//a[@id='FormLayout_plominoaction']/img")
    client.waits.forElement(timeout=u'5000', id=u'actionid')
    client.type(text=u'action1', id=u'actionid')
    client.select(val=u'CLOSE', id=u'actionTypesList')
    client.click(id=u'insert')
    client.click(name=u'form.button.save')
    client.waits.forPageLoad(timeout=u'20000')
コード例 #27
0
def test_edit_list_name():
    client = WindmillTestClient(__name__)

    client.asserts.assertNode(id=u'subscription_1_listname')
    client.asserts.assertText(validator=u'test list 1', id=u'subscription_1_listname')
    client.click(id=u'subscription_1_listname')
    client.type(text=u'shagalaga', name=u'text')
    client.keyPress(options=u'13,false,false,false,false,false', name=u'text')
    client.waits.sleep(milliseconds=u'500')
    client.asserts.assertText(validator=u'shagalaga', id=u'subscription_1_listname')
    client.click(id=u'subscription_1_listname')
    client.type(text=u'test list 1', name=u'text')
    client.keyPress(options=u'13,false,false,false,false,false', name=u'text')
    client.waits.sleep(milliseconds=u'500')
    client.asserts.assertText(validator=u'test list 1', id=u'subscription_1_listname')
コード例 #28
0
def test_os_poker_tourney_register_unregister():
    client = WindmillTestClient(__name__)

    signup(client)
    client.click(xpath=u"//li[@id='lobby_sng']/a")
    client.waits.forElement(classname=u'jpoker_tourney_state_registering')
    client.click(classname=u'jpoker_tourney_state_registering')
    client.waits.sleep(milliseconds=u'1000')
    client.click(id=u"lobby_join_table")
    for i in range(100):
        print i
        client.waits.forElement(value=u'Register')
        client.click(value=u'Register')
        client.waits.forElement(value=u'Unregister')
        client.click(value=u'Unregister')
コード例 #29
0
def test_createHidewhen():
    client = WindmillTestClient(__name__)

    client.click(link=u'Edit')
    client.waits.forPageLoad(timeout=u'20000')
    client.waits.forElement(xpath=u"//body[@id='content']", timeout=u'8000')
    client.click(xpath=u"//body[@id='content']")
    client.click(id=u'FormLayout_plominohidewhen')
    client.waits.forElement(timeout=u'5000', id=u'hidewhenid')
    client.type(text=u'hidewhen1', id=u'hidewhenid')
    client.waits.forElement(timeout=u'5000', id=u'hidewhenFormula')
    client.type(text=u'False', id=u'hidewhenFormula')
    client.click(id=u'insert')
    client.click(name=u'form.button.save')
    client.waits.forPageLoad(timeout=u'20000')
コード例 #30
0
def test_edit_list_name():
    client = WindmillTestClient(__name__)

    client.asserts.assertNode(id=u'item_1_text')
    client.asserts.assertText(validator=u'test item 1', id=u'item_1_text')
    client.click(id=u'item_1_text')
    client.type(text=u'pim pom', name=u'text')
    client.keyPress(options=u'13,false,false,false,false,false', name=u'text')
    client.waits.sleep(milliseconds=u'500')
    client.asserts.assertText(validator=u'pim pom', id=u'item_1_text')
    client.click(id=u'item_1_text')
    client.type(text=u'test item 1', name=u'text')
    client.keyPress(options=u'13,false,false,false,false,false', name=u'text')
    client.waits.sleep(milliseconds=u'500')
    client.asserts.assertText(validator=u'test item 1', id=u'item_1_text')
コード例 #31
0
def setup_module(module):
    client = WindmillTestClient(__name__)

    #client.open(url='http://www.qq.com/')
    client.open(url='http://zc.qq.com/')
    client.waits.forPageLoad()

    client.click(xpath="//a[@href='http://zc.qq.com/']")

    client.waits.forElement(xpath="//form[@method='post']", timeout=5)

    client.type(text='', xpath="//input[@id='nick']")

    print 'before click'
    clickResult = client.click(xpath=u"//a[@class='button'][name(..)='div']")
    print 'type(clickResult): ', type(clickResult)
コード例 #32
0
ファイル: AutoGitHub.py プロジェクト: pylon2008/AutoVerify
def setup_module(module):
    client = WindmillTestClient(__name__)
    
    #client.open(url='http://www.qq.com/')
    client.open(url='http://zc.qq.com/')
    client.waits.forPageLoad()

    client.click(xpath="//a[@href='http://zc.qq.com/']")
        
    client.waits.forElement(xpath="//form[@method='post']",timeout=5)

    client.type(text='', xpath="//input[@id='nick']")
    
    
    print 'before click'
    clickResult = client.click(xpath=u"//a[@class='button'][name(..)='div']")
    print 'type(clickResult): ', type(clickResult)
コード例 #33
0
def test_edit_list_name():
    client = WindmillTestClient(__name__)

    client.asserts.assertNode(id=u'subscription_1_listname')
    client.asserts.assertText(validator=u'test list 1',
                              id=u'subscription_1_listname')
    client.click(id=u'subscription_1_listname')
    client.type(text=u'shagalaga', name=u'text')
    client.keyPress(options=u'13,false,false,false,false,false', name=u'text')
    client.waits.sleep(milliseconds=u'500')
    client.asserts.assertText(validator=u'shagalaga',
                              id=u'subscription_1_listname')
    client.click(id=u'subscription_1_listname')
    client.type(text=u'test list 1', name=u'text')
    client.keyPress(options=u'13,false,false,false,false,false', name=u'text')
    client.waits.sleep(milliseconds=u'500')
    client.asserts.assertText(validator=u'test list 1',
                              id=u'subscription_1_listname')
コード例 #34
0
ファイル: fold.py プロジェクト: pokermania/jpoker
def test_fold():
    client = WindmillTestClient(__name__)

    client.waits.forElement(classname='jpoker_table')
    client.click(classname=u'jpoker_login_name')
    client.type(classname='jpoker_login_name',
                text=u'user%s' % md5(str(time())).hexdigest())
    client.click(classname=u'jpoker_login_password')
    client.type(classname=u'jpoker_login_password', text=u'password')
    client.click(classname=u'jpoker_login_submit')
    client.waits.forElement(classname='jpoker_logout')
    client.click(classname=u'jpoker_tablepicker_submit')
    for i in range(100):
        client.waits.forElement(jquery=u'(".jpoker_ptable_fold:visible")[0]',
                                timeout=u'60000')
        client.click(classname=u'jpoker_ptable_fold')
        client.waits.forElement(jquery=u'(".jpoker_ptable_fold:hidden")[0]',
                                timeout=u'60000')
コード例 #35
0
def test_scrape_iotd_gallery():
    """
    Scrape NASA Image of the Day Gallery
    """
    print "begin test"
    # Extra data massage for BeautifulSoup
    my_massage = get_massage()

    # Open main gallery page
    client = WindmillTestClient(__name__)
    client.open(url='http://www.nasa.gov/multimedia/imagegallery/iotd.html')

    # Page isn't completely loaded until image gallery data
    # has been updated by javascript code
    client.waits.forElement(xpath=u"//div[@id='gallery_image_area']/img",
                            timeout=30000)

    # Scrape all images information
    images_info = []
    counter = 0
    while True:
        counter += 1
        if counter >= 8:
            break
        imageThis = get_image_info(client, my_massage)

        # Break if image has been already scrapped
        # (that means that all images have been parsed
        # since they are ordered in a circular ring)
        if (len(images_info) > 0) and (imageThis['link']
                                       == images_info[-1]['link']):
            break

        images_info.append(imageThis)

        # Click to get the information for the next image
        client.click(xpath=u"//div[@class='btn_image_next']")

    # Print results to stdout ordered by image name
    for image in images_info:
        #print str(image)
        print "name: ", image['name']
        print "link: ", image['link']
        print "\r\n\r\n"
コード例 #36
0
def test_register():
    client = WindmillTestClient(__name__)
    username = functest.registry.get('username')
    password = functest.registry.get('password', username)
    login(client, username, password)
    client.click(xpath=u"//li[@id='lobby_regular']/a")
    client.waits.forElement(classname=u'jpoker_tourney_state_registering')
    client.click(classname=u'jpoker_tourney_state_registering')
    client.waits.sleep(milliseconds=u'1000')
    client.click(id=u"lobby_join_table")
    client.waits.forElement(value=u'Register')
    client.click(value=u'Register')
コード例 #37
0
ファイル: windmilltests.py プロジェクト: blw0rm/testprofile
def test_middleware():
    client = WindmillTestClient(__name__)

    client.click(id=u'id_username')
    client.type(text=u'ivan', id=u'id_username')
    client.type(text=u'passwd', id=u'id_password')
    client.click(value=u'\u0412\u043e\u0439\u0442\u0438')
    client.waits.forPageLoad(timeout=u'20000')
    client.waits.forElement(link=u'+', timeout=u'8000')
    client.click(link=u'+')
    client.click(link=u'Exit')
    client.waits.forPageLoad(timeout=u'20000')
コード例 #38
0
ファイル: test_minimize_list.py プロジェクト: visadb/ideaList
def test_minimize_list():
    client = WindmillTestClient(__name__)

    client.asserts.assertJS(
        js=u"$('#subscription_1 > .itemlist').is(':visible')")
    client.asserts.assertJS(js=u"$('#itemcount_subscription_1').is(':hidden')")
    client.click(id=u'minmax_subscription_1')
    client.waits.sleep(milliseconds=u'500')
    client.asserts.assertJS(
        js=u"$('#subscription_1 > .itemlist').is(':hidden')")
    client.asserts.assertJS(
        js=u"$('#itemcount_subscription_1').is(':visible')")
    client.asserts.assertJS(
        js=u'$(\'#itemcount_subscription_1 > .count\').html() == "0"')
    client.click(id=u'minmax_subscription_1')
    client.waits.sleep(milliseconds=u'500')
    client.asserts.assertJS(
        js=u"$('#subscription_1 > .itemlist').is(':visible')")
    client.asserts.assertJS(js=u"$('#itemcount_subscription_1').is(':hidden')")
コード例 #39
0
def test():
    client = WindmillTestClient(__name__)

    client.click(id=u'viewNavCenterRight')
    client.waits.sleep(milliseconds=2000)
    client.doubleClick(id=u'hourDiv1-1200')
    client.waits.sleep(milliseconds=2000)
    client.type(text=u'Properties Test', id=u'noteTitle')
    client.type(text=u'9:00', id=u'startTime')
    client.type(text=u'4:00', id=u'endTime')
    client.radio(id=u'startMeridianAM')
    client.radio(id=u'endMeridianPM')
    client.select(id=u'eventStatus', option=u'Tentative')
    client.type(text=u'A description for the properties test', id=u'noteDescription')
    if client.execJS(js='1 == 0')['output']:
        pass
##    if client.execJS(js=''lookupNode({id: 'a_node_id'}).innerHTML")['output'] == "some test":
##       pass
    client.keyPress(id=u'some_id', options='a,true,false,false,false,false')
コード例 #40
0
ファイル: __init__.py プロジェクト: visadb/ideaList
def setup_module(module):
    "Add items. Also test suggestion box."
    client = WindmillTestClient(__name__)

    def enter_item_text(text, ctrl=False):
        if ctrl:
            options = u'13,false,true,false,false,false'
        else:
            options = u'13,false,false,false,false,false'
        client.waits.forElement(xpath=u"//input[@class='additem']", timeout=u'20000')
        client.type(xpath=u"//input[@class='additem']", text=text)
        client.keyUp(xpath=u"//input[@class='additem']", options=options)
        if not ctrl:
            client.waits.forNotElement(xpath=u"//input[@class='additem']", timeout=u'20000')

    client.asserts.assertNotNode(xpath=u"//input[@class='additem']")

    # 1st item to test list 1 (from list's additem button)
    client.asserts.assertNotNode(id=u'item_1')
    client.click(id=u'additem_list_1')
    enter_item_text('test item 1')
    client.waits.forElement(id=u"item_1", timeout=u'20000')

    # 2nd item to test list 1 (from item1's additem button)
    client.asserts.assertNotNode(id=u'item_2')
    client.click(xpath=u"//li[@id='item_1']/a[@title='Add item']")
    enter_item_text('test item 2')
    client.waits.forElement(id=u"item_2", timeout=u'20000')

    # 3rd item to test list 1 (from item1's additem button with ctrl)
    client.asserts.assertNotNode(id=u'item_3')
    client.click(xpath=u"//li[@id='item_1']/a[@title='Add item']")
    enter_item_text('test item 3', ctrl=True)
    client.waits.forElement(id=u"item_3", timeout=u'20000')

    # 4th item to test list 1 (with residual additem field from last one)
    client.asserts.assertNotNode(id=u'item_4')
    enter_item_text('test item 4')
    client.waits.forElement(id=u"item_4", timeout=u'20000')

    # 5th item to test list 2
    client.asserts.assertNotNode(id=u'item_5')
    client.click(id=u'additem_list_2')
    client.waits.sleep(milliseconds=u'50')
    client.asserts.assertJS(js=u"$('#suggestion_box').is(':hidden')")
    enter_item_text('test item 5')
    client.waits.forElement(id=u"item_5", timeout=u'20000')

    client.asserts.assertJS(js=u"$('#subscription_1 .item:nth(0)').attr('id') == 'item_1'")
    client.asserts.assertJS(js=u"$('#subscription_1 .item:nth(1)').attr('id') == 'item_4'")
    client.asserts.assertJS(js=u"$('#subscription_1 .item:nth(2)').attr('id') == 'item_3'")
    client.asserts.assertJS(js=u"$('#subscription_1 .item:nth(3)').attr('id') == 'item_2'")
    client.asserts.assertJS(js=u"$('#subscription_2 .item:nth(0)').attr('id') == 'item_5'")
コード例 #41
0
def test_createDB():
    client = WindmillTestClient(__name__)

    client.click(link=u'Home')
    client.waits.forPageLoad(timeout=u'20000')
    client.waits.forElement(xpath=u"//dl[@id='plone-contentmenu-factories']/dt/a/span[1]", timeout=u'8000')
    client.click(xpath=u"//dl[@id='plone-contentmenu-factories']/dt/a/span[1]")
    client.click(xpath=u"//a[@id='plominodatabase']/span")
    client.waits.forPageLoad(timeout=u'20000')
    client.type(text=u'testdb', id=u'title')
    client.click(name=u'form.button.save')
    client.waits.forPageLoad(timeout=u'20000')
コード例 #42
0
ファイル: test_set_item_url.py プロジェクト: visadb/ideaList
def test_set_item_url():
    client = WindmillTestClient(__name__)

    # set item 1 url (press enter)
    client.asserts.assertJS(js=u"$('#link_button').is(':hidden')")
    client.check(xpath=u"//li[@id='item_1']/input[@type='checkbox']")
    client.asserts.assertChecked(
        xpath=u"//li[@id='item_1']/input[@type='checkbox']")
    client.asserts.assertJS(js=u"$('#link_button').is(':visible')")
    client.asserts.assertJS(js=u"$('#url_input_container').is(':hidden')")
    client.asserts.assertJS(js=u"$('#item_1_link').is(':hidden')")
    client.click(id=u'link_button')
    client.waits.sleep(milliseconds=u'100')
    client.asserts.assertJS(js=u"$('#url_input_container').is(':visible')")
    client.type(id=u'url_input', text=u'http://google.com/')
    client.keyDown(id=u'url_input',
                   options=u'13,false,false,false,false,false')
    client.waits.sleep(milliseconds=u'500')
    client.asserts.assertJS(js=u"$('#item_1_link').is(':visible')")
    client.asserts.assertJS(
        js=u"$('#item_1_link').attr('href') == 'http://google.com/'")
    client.asserts.assertJS(js=u"$('#link_button').is(':hidden')")

    # unset item 1 url (click submit button)
    client.check(xpath=u"//li[@id='item_1']/input[@type='checkbox']")
    client.asserts.assertChecked(
        xpath=u"//li[@id='item_1']/input[@type='checkbox']")
    client.asserts.assertJS(js=u"$('#url_input_container').is(':hidden')")
    client.asserts.assertJS(js=u"$('#item_1_link').is(':visible')")
    client.click(id=u'link_button')
    client.waits.sleep(milliseconds=u'100')
    client.asserts.assertJS(js=u"$('#url_input_container').is(':visible')")
    client.asserts.assertJS(
        js=u"$('#url_input').val() == 'http://google.com/'")
    client.type(id=u'url_input', text=u'')
    client.click(id=u'url_submit')
    client.waits.sleep(milliseconds=u'500')
    client.asserts.assertJS(js=u"$('#url_input_container').is(':hidden')")
    client.asserts.assertJS(js=u"$('#item_1_link').is(':hidden')")
    client.asserts.assertJS(js=u"$('#item_1_link').attr('href') == ''")

    # test canceling by unchecking while editing
    client.check(xpath=u"//li[@id='item_1']/input[@type='checkbox']")
    client.asserts.assertChecked(
        xpath=u"//li[@id='item_1']/input[@type='checkbox']")
    client.asserts.assertJS(js=u"$('#url_input_container').is(':hidden')")
    client.click(id=u'link_button')
    client.waits.sleep(milliseconds=u'100')
    client.asserts.assertJS(js=u"$('#url_input_container').is(':visible')")
    client.check(xpath=u"//li[@id='item_1']/input[@type='checkbox']")
    client.asserts.assertNotChecked(
        xpath=u"//li[@id='item_1']/input[@type='checkbox']")
    client.asserts.assertJS(js=u"$('#url_input_container').is(':hidden')")
コード例 #43
0
ファイル: WebScraping2.py プロジェクト: pylon2008/AutoVerify
def test_scrape_iotd_gallery():
    """
    Scrape NASA Image of the Day Gallery
    """
    print "begin test"
    # Extra data massage for BeautifulSoup
    my_massage = get_massage()

    # Open main gallery page
    client = WindmillTestClient(__name__)
    client.open(url='http://www.nasa.gov/multimedia/imagegallery/iotd.html')

    # Page isn't completely loaded until image gallery data
    # has been updated by javascript code
    client.waits.forElement(xpath=u"//div[@id='gallery_image_area']/img",timeout=30000)

    # Scrape all images information
    images_info = []
    counter = 0
    while True:
        counter += 1
        if counter >= 8:
            break
        imageThis = get_image_info(client, my_massage)

        # Break if image has been already scrapped
        # (that means that all images have been parsed
        # since they are ordered in a circular ring)
        if (len(images_info) > 0) and (imageThis['link'] == images_info[-1]['link']):
            break

        images_info.append(imageThis)

        # Click to get the information for the next image
        client.click(xpath=u"//div[@class='btn_image_next']")

    # Print results to stdout ordered by image name
    for image in images_info:
        #print str(image)
        print "name: ", image['name']
        print "link: ", image['link']
        print "\r\n\r\n"
コード例 #44
0
ファイル: loginForm.py プロジェクト: CGTIC/Plone_SP
def test_loginForm():
    client = WindmillTestClient(__name__)

    client.asserts.assertNode(id=u'anon-personalbar')
    client.asserts.assertNode(jquery=u'("#anon-personalbar a.link-overlay")[0]')
    client.click(jquery=u'("#anon-personalbar a.link-overlay")[0]')
    client.waits.forElement(jquery=u'("div.pb-ajax #login_form")[0]', timeout=u'1000')
    client.click(id=u'exposeMask')
    client.waits.sleep(milliseconds=u'500')
    client.asserts.assertNotNode(jquery=u'("div.pb-ajax #login_form")[0]')
    client.asserts.assertNode(id=u'anon-personalbar')
    client.asserts.assertNode(jquery=u'("#anon-personalbar a.link-overlay")[0]')
    client.click(jquery=u'("#anon-personalbar a.link-overlay")[0]')
    client.waits.forElement(jquery=u'("div.pb-ajax #login_form")[0]', timeout=u'1000')
    client.click(name=u'submit')
    client.waits.forElement(jquery=u"('div.pb-ajax dl .portalMessage .error dt')", timeout=u'1000')
    client.type(text=u'admin', id=u'__ac_name')
    client.type(text=u'admin', id=u'__ac_password')
    client.click(name=u'submit')
    client.waits.forPageLoad(timeout=u'20000')
    client.asserts.assertNode(id=u'edit-bar')
コード例 #45
0
ファイル: test_RequestsPage.py プロジェクト: dobruiyyk/tasks
def test_recordingSuite0():
    '''windmill >> '/requests/' requests page test
    '''
    client = WindmillTestClient(__name__)

    client.waits.sleep(milliseconds=2000)
    client.click(link=u'requests')
    client.waits.forPageLoad(timeout=u'20000')

    client.asserts.assertTextIn(xpath=u"//div[@id='content']/p[1]",
                                validator=u'127.0.0.1')
    client.asserts.assertTextIn(xpath=u"//div[@id='content']/p[2]",
                                validator=u'127.0.0.1')
    client.asserts.assertTextIn(xpath=u"//div[@id='content']/p[3]",
                                validator=u'127.0.0.1')
    client.asserts.assertTextIn(xpath=u"//div[@id='content']/p[4]",
                                validator=u'127.0.0.1')
    client.asserts.assertTextIn(xpath=u"//div[@id='content']/p[5]",
                                validator=u'127.0.0.1')
    client.asserts.assertTextIn(xpath=u"//div[@id='content']/p[6]",
                                validator=u'127.0.0.1')
    client.asserts.assertTextIn(xpath=u"//div[@id='content']/p[7]",
                                validator=u'127.0.0.1')
    client.asserts.assertTextIn(xpath=u"//div[@id='content']/p[8]",
                                validator=u'127.0.0.1')
    client.asserts.assertTextIn(xpath=u"//div[@id='content']/p[9]",
                                validator=u'127.0.0.1')
    client.asserts.assertTextIn(xpath=u"//div[@id='content']/p[10]",
                                validator=u'127.0.0.1')
    client.click(link=u'main page')
    client.waits.forPageLoad(timeout=u'20000')
    client.waits.forElement(link=u'requests', timeout=u'8000')
    client.click(link=u'requests')
    client.waits.forPageLoad(timeout=u'20000')
コード例 #46
0
def test_toggle_item_importance():
    client = WindmillTestClient(__name__)

    # make item 3 important
    client.asserts.assertJS(js=u"$('#important_button').is(':hidden')")
    client.check(xpath=u"//li[@id='item_3']/input[@type='checkbox']")
    client.asserts.assertChecked(xpath=u"//li[@id='item_3']/input[@type='checkbox']")
    client.asserts.assertJS(js=u"$('#important_button').is(':visible')")
    client.asserts.assertNotJS(js=u"$('#item_3').hasClass('important')")
    client.click(id=u'important_button')
    client.waits.sleep(milliseconds=u'500')
    client.asserts.assertJS(js=u"$('#item_3').hasClass('important')")
    client.asserts.assertJS(js=u"$('#remove_button').is(':hidden')")

    # toggle importance of 1 and 3
    client.check(xpath=u"//li[@id='item_1']/input[@type='checkbox']")
    client.asserts.assertChecked(xpath=u"//li[@id='item_1']/input[@type='checkbox']")
    client.check(xpath=u"//li[@id='item_3']/input[@type='checkbox']")
    client.asserts.assertChecked(xpath=u"//li[@id='item_3']/input[@type='checkbox']")
    client.asserts.assertNotJS(js=u"$('#item_1').hasClass('important')")
    client.click(id=u'important_button')
    client.waits.sleep(milliseconds=u'500')
    client.asserts.assertJS(js=u"$('#item_1').hasClass('important')")
    client.asserts.assertNotJS(js=u"$('#item_3').hasClass('important')")

    # reset importance of 1
    client.check(xpath=u"//li[@id='item_1']/input[@type='checkbox']")
    client.asserts.assertChecked(xpath=u"//li[@id='item_1']/input[@type='checkbox']")
    client.click(id=u'important_button')
    client.waits.sleep(milliseconds=u'500')
    client.asserts.assertNotJS(js=u"$('#item_1').hasClass('important')")
    client.asserts.assertNotJS(js=u"$('#item_3').hasClass('important')")
コード例 #47
0
def test_createDB():
    client = WindmillTestClient(__name__)

    client.click(link=u'Home')
    client.waits.forPageLoad(timeout=u'20000')
    client.waits.forElement(
        xpath=u"//dl[@id='plone-contentmenu-factories']/dt/a/span[1]",
        timeout=u'8000')
    client.click(xpath=u"//dl[@id='plone-contentmenu-factories']/dt/a/span[1]")
    client.click(xpath=u"//a[@id='plominodatabase']/span")
    client.waits.forPageLoad(timeout=u'20000')
    client.type(text=u'testdb', id=u'title')
    client.click(name=u'form.button.save')
    client.waits.forPageLoad(timeout=u'20000')
コード例 #48
0
ファイル: __init__.py プロジェクト: visadb/ideaList
def setup_module(module):
    "Login and create three lists"
    client = WindmillTestClient(__name__)

    client.asserts.assertNode(id=u"id_username")
    client.type(text=u'visa', id=u'id_username')
    client.asserts.assertNode(id=u"id_password")
    client.type(text=u'salakala', id=u'id_password')
    client.click(value=u'login')
    client.waits.forPageLoad(timeout=u'20000')

    client.asserts.assertText(xpath=u"//div[@id='user-tools']/a", validator=u'Log out')
    client.execJS(js='window.autorefresh_freq = -1;')

    def create_list(i):
        name = 'test list '+str(i)
        client.asserts.assertNotNode(id=u"subscription_"+str(i))
        client.asserts.assertNode(id=u"create_list_nameinput")
        client.type(id=u'create_list_nameinput', text=name)
        client.keyUp(id=u'create_list_nameinput', options='13,false,false,false,false,false')
        client.waits.forElement(id=u"subscription_"+str(i), timeout=u'20000')

    client.asserts.assertJS(js=u"$('#listmenu_listlist').is(':hidden')")
    client.asserts.assertNode(id=u"lists_button")
    client.click(id=u"lists_button") # show list menu
    client.waits.sleep(milliseconds=u'500')
    client.asserts.assertNotJS(js=u"$('#listmenu_listlist').is(':hidden')")
    for i in [1,2,3]:
        create_list(i)
    client.click(id=u"lists_button") # hide list menu
コード例 #49
0
ファイル: __init__.py プロジェクト: visadb/ideaList
def setup_module(module):
    "Login and create three lists"
    client = WindmillTestClient(__name__)

    client.asserts.assertNode(id=u"id_username")
    client.type(text=u'visa', id=u'id_username')
    client.asserts.assertNode(id=u"id_password")
    client.type(text=u'salakala', id=u'id_password')
    client.click(value=u'login')
    client.waits.forPageLoad(timeout=u'20000')

    client.asserts.assertText(xpath=u"//div[@id='user-tools']/a",
                              validator=u'Log out')
    client.execJS(js='window.autorefresh_freq = -1;')

    def create_list(i):
        name = 'test list ' + str(i)
        client.asserts.assertNotNode(id=u"subscription_" + str(i))
        client.asserts.assertNode(id=u"create_list_nameinput")
        client.type(id=u'create_list_nameinput', text=name)
        client.keyUp(id=u'create_list_nameinput',
                     options='13,false,false,false,false,false')
        client.waits.forElement(id=u"subscription_" + str(i), timeout=u'20000')

    client.asserts.assertJS(js=u"$('#listmenu_listlist').is(':hidden')")
    client.asserts.assertNode(id=u"lists_button")
    client.click(id=u"lists_button")  # show list menu
    client.waits.sleep(milliseconds=u'500')
    client.asserts.assertNotJS(js=u"$('#listmenu_listlist').is(':hidden')")
    for i in [1, 2, 3]:
        create_list(i)
    client.click(id=u"lists_button")  # hide list menu
コード例 #50
0
class CenarioVisitanteSeInscreve(Cenario):

    @DadoQue('Estou na paǵina de inscrições')
    def abrir_pagina_principal(self):
        self.navegador = WindmillTestClient(__name__)
        self.navegador.open(url='/inscricoes/')

    @Quando("eu clico em 'Quero me inscrever'")
    def clicar_em_quero_me_inscrever(self):
        self.navegador.click(id='inscrever')

    @Quando("eu entro com todos os meus dados")
    def entrar_dados(self):
        pass

    @Quando("eu clico em 'Salvar'")
    def clicar_em_salvar(self):
        pass

    @Entao("a mensagem 'Participante inserido com sucesso' deverá aparecer")
    def mensagem_sucesso(self):
        pass
コード例 #51
0
def test_scrape_iotd_gallery():
    """
    Scrape NASA Image of the Day Gallery
    """
    # Extra data massage for BeautifulSoup
    my_massage = get_massage()

    # Open main gallery page
    client = WindmillTestClient(__name__)
    # client = WindmillTestClient
    client.open(url='http://www.nasa.gov/multimedia/imagegallery/iotd.html')

    # Page isn't completely loaded until image gallery data
    # has been updated by javascript code
    client.waits.forElement(xpath=u"//div[@id='gallery_image_area']/img",
                            timeout=30000)

    # Scrape all images information
    images_info = {}
    while True:
        image_info = get_image_info(client, my_massage)

        # Break if image has been already scrapped
        # (that means that all images have been parsed
        # since they are ordered in a circular ring)
        if image_info['link'] in images_info:
            break

    images_info[image_info['link']] = image_info

    # Click to get the information for the next image
    client.click(xpath=u"//div[@class='btn_image_next']")

    # Print results to stdout ordered by image name
    for image_info in sorted(images_info.values(),
                             key=lambda image_info: image_info['name']):
        print ("Name: %(name)sn"
               "Link: %(link)sn" % image_info)
コード例 #52
0
ファイル: test_remove_item.py プロジェクト: visadb/ideaList
def test_remove_item():
    client = WindmillTestClient(__name__)

    #delete
    client.asserts.assertJS(js=u"$('#remove_button').is(':hidden')")
    client.check(xpath=u"//li[@id='item_3']/input[@type='checkbox']")
    client.asserts.assertChecked(xpath=u"//li[@id='item_3']/input[@type='checkbox']")
    client.asserts.assertJS(js=u"$('#remove_button').is(':visible')")
    client.click(id=u'remove_button')
    client.waits.forNotElement(timeout=u'20000', id=u'item_3')
    client.asserts.assertJS(js=u"$('#remove_button').is(':hidden')")

    #undelete
    client.click(id=u'more_button')
    client.waits.sleep(milliseconds=u'500')
    client.click(link=u'Deleted stuff')
    client.waits.forPageLoad(timeout=u'20000')
    client.check(xpath=u"//input[@name='item_ids' and @value='3']")
    client.asserts.assertChecked(xpath=u"//input[@name='item_ids' and @value='3']")
    client.click(name=u'undelete')
    client.waits.forPageLoad(timeout=u'20000')
    client.click(link=u'Back to main view')
    client.waits.forPageLoad(timeout=u'20000')
    client.asserts.assertNode(id=u'item_3')
コード例 #53
0
def test_unsubscribe():
    client = WindmillTestClient(__name__)

    client.click(id=u"lists_button")  # show list menu
    client.waits.sleep(milliseconds=u'500')

    #unsubscribe
    client.asserts.assertNode(id=u"subscription_2")
    client.asserts.assertNode(id=u"unsubscribe_list_2")
    client.click(id=u"unsubscribe_list_2")
    client.waits.forNotElement(id=u"subscription_2", timeout=u'20000')

    #subscribe
    client.waits.forElement(id=u"subscribe_list_2", timeout=u'20000')
    client.click(id=u"subscribe_list_2")
    client.waits.forElement(id=u"subscription_2", timeout=u'20000')
    client.click(id=u"lists_button")  # hide list menu
コード例 #54
0
def test_cart_prices():
    client = WindmillTestClient(__name__)
    client.open(url="/product/chocolate")
    client.waits.forPageLoad(timeout=u'20000')

    # check that product includes vat
    client.asserts.assertText(xpath=u"//form[@id='product-form']/div[5][@class='prices']/div[2][@class='price-disclaimer']", validator=u'*inc. VAT')

    client.waits.forElement(timeout=u'8000', name=u'add-to-cart')
    client.click(name=u'add-to-cart')
    client.waits.forPageLoad(timeout=u'20000')
    client.open(url="/product/apple")
    client.waits.forPageLoad(timeout=u'20000')

    # check that product excludes vat
    client.asserts.assertText(xpath=u"//form[@id='product-form']/div[5][@class='prices']/div[2][@class='price-disclaimer']", validator=u'*exc. VAT')

    client.waits.forElement(timeout=u'8000', name=u'add-to-cart')
    client.click(name=u'add-to-cart')
    client.waits.forPageLoad(timeout=u'20000')
    client.waits.forElement(link=u'Checkout', timeout=u'8000')
    client.click(link=u'Checkout')
    client.waits.forPageLoad(timeout=u'20000')
    client.waits.forElement(link=u'Checkout', timeout=u'8000')
    client.click(link=u'Checkout')
    client.waits.forPageLoad(timeout=u'20000')

    # check net price of chocolate
    client.asserts.assertText(xpath=u"//div[@id='cart-inline']/table[@class='lfs-default cart']/tbody/tr[2]/td[4][@class='number']", validator=u'61,67 €')

    # check vat on chocolate
    client.asserts.assertText(xpath=u"//div[@id='cart-inline']/table[@class='lfs-default cart']/tbody/tr[2]/td[5][@class='number']", validator=u'(8,33 €)')

    # check total on chocolate
    client.asserts.assertText(xpath=u"//div[@id='cart-inline']/table[@class='lfs-default cart']/tbody/tr[2]/td[6][@class='number']", validator=u'70,00 €')

    # check net price of apple
    client.asserts.assertText(xpath=u"//div[@id='cart-inline']/table[@class='lfs-default cart']/tbody/tr[3]/td[4][@class='number']", validator=u'80,00 €')

    # check vat on apple
    client.asserts.assertText(xpath=u"//div[@id='cart-inline']/table[@class='lfs-default cart']/tbody/tr[3]/td[5][@class='number']", validator=u'(16,80 €)')

    # check total on apple
    client.asserts.assertText(xpath=u"//div[@id='cart-inline']/table[@class='lfs-default cart']/tbody/tr[3]/td[6][@class='number']", validator=u'96,80 €')
コード例 #55
0
def test_google_switch_to_yahoo():
    client = WindmillTestClient(__name__)
    client.open(url=u'http://www.google.com/intl/en/')
    client.waits.forElement(timeout=u'', name=u'q')
    client.click(name=u'q')
    client.type(text=u'wikipedia', name=u'q')
    client.click(name=u'btnG')
    client.waits.forElement(link=u'Wikipedia', timeout=u'8000')
    client.click(link=u'Wikipedia')
    client.waits.forPageLoad(timeout=u'20000')
    client.asserts.assertJS(
        js=u"windmill.testWin().document.title == 'Wikipedia'")