Skip to content

Instantly share code, notes, and snippets.

View valyukov's full-sized avatar

Vlad Alyukov valyukov

View GitHub Profile
@valyukov
valyukov / testframework.py
Created May 14, 2013 14:45
example test framework
# coding=utf-8
import unittest
import junitxml
from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
import sys
##
# Framework Part
##
@valyukov
valyukov / gist:5480915
Created April 29, 2013 10:51
How use RemoteWebDriver
import org.openqa.selenium.By;
import org.openqa.selenium.Capabilities;
import org.openqa.selenium.chrome.ChromeOptions;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
import java.net.MalformedURLException;
import java.net.URL;
public class App {
@valyukov
valyukov / disable_animation.py
Created September 13, 2012 19:59
Selenium disable animation
# coding=utf-8
import unittest
import junitxml
from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.support.abstract_event_listener import AbstractEventListener
from selenium.webdriver.support.event_firing_webdriver import EventFiringWebDriver
import sys
class TestListener(AbstractEventListener):
@valyukov
valyukov / action_chains.py
Created September 13, 2012 19:09
Selenium AUI in action
# coding=utf-8
from selenium import webdriver
from selenium.webdriver import ActionChains
driver = webdriver.Firefox()
driver.get('http://go.mail.ru/')
source = driver.find_element_by_id("source")
target = driver.find_element_by_id("target")
action_chains = ActionChains(driver)
action_chains.drag_and_drop(source, target);
@valyukov
valyukov / simple_listener.py
Created September 13, 2012 19:07
пример работы selenium с листенерами
# coding=utf-8
import unittest
import junitxml
from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.support.abstract_event_listener import AbstractEventListener
from selenium.webdriver.support.event_firing_webdriver import EventFiringWebDriver
import sys
class TestListener(AbstractEventListener):
@valyukov
valyukov / decorator.py
Created September 13, 2012 18:48
Простой пример работы декоратора
def butter(func):
print '===butter=='
func()
@butter
def bread():
print '===bread==='
@valyukov
valyukov / how_workds_decorator_mechanics.py
Created September 13, 2012 18:23
Как работают декораторы
def butter(func):
print '===butter=='
func()
def bread():
print '===bread==='
butter(bread)
@valyukov
valyukov / simple_test_fw.py
Created September 13, 2012 18:11
Простой пример тестового фрэймворка с выводом на консоль результатов в xUnit формате.
# coding=utf-8
import unittest
import junitxml
from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
import sys
def lazy_drivers(capabilities, rwd='http://127.0.0.1:4444/wd/hub'):
for capability in capabilities:
@valyukov
valyukov / pageobject.py
Created September 13, 2012 17:58
Пример использования паттерна PageObject
# coding=utf-8
import unittest
from selenium.common.exceptions import NoSuchElementException
def require_load(func):
def load_page(page, *params, **kwargs):
if not page.is_loaded():
page.load()
assert (page.is_loaded()), "Страница не загружена"
return func(page, *params, **kwargs)
@valyukov
valyukov / simple_testcase.py
Created September 13, 2012 17:54
Пример оформления теста в тесткейс
# coding=utf-8
import unittest
from selenium import webdriver
class SimpleTest(unittest.TestCase):
def setUp(self):
self.driver = webdriver.Firefox()
self.driver.maximize_window()
def test_result_page_load_for_mail(self):