GithubHelp home page GithubHelp logo

primitive's Introduction

primitive

Hi, guys! Here is one more lib that uses Selenium Webdriver.

I have no idea how to call it by now. So I named it as “Primitive”. I will change its name if I have any idea. :)

The general idea was to provide ability for automated test execution which would interact with browser window, web page, or web page elements. Also it should work with more than one instance of webdriver in multithread environment. I’m sure it would be useful for developing automated test cases of any complexity.

Now it is rather rough and has some issues but still works. Also, I am sorry for my English in comments to source code. My excuse is that I had not enough time for good translation from Russian. But all these problems will be fixed while I am working on projects with the following tools: Html Elements (by Yandex) and thucydides.

You can check out sources.

I made it just for fun.

primitive's People

Contributors

tikhomirovsergey avatar

Stargazers

Serhii P. avatar Giannis Papadakis avatar Ilia Pochinskii avatar

Watchers

James Cloos avatar Illia avatar  avatar  avatar Eric_Shi avatar  avatar

Forkers

poulv

primitive's Issues

Refactor of UnhandledWindowChecker class.

  1. Listener of UnhandledWindowChecker object should be made up.
  2. There should be a common implementation of the new interface. It should work with Log and Photographer.
  3. I think it makes sense to remove deprecated methods

ClosedFiringWebDriver should be divided and removed.

https://github.com/TikhomirovSergey/primitive/blob/master/primitive/src/main/java/org/primitive/webdriverencapsulations/ClosedFiringWebDriver.java

It is a God Object, that obstruct changes . Also, all nested classes duplicate these classes (https://github.com/TikhomirovSergey/primitive/tree/master/primitive/src/main/java/org/primitive/webdriverencapsulations/webdrivercomponents).

I did this a year ago because I had not much knowlege about WebDriver and its components and I faced up a problem with multithread working against Internet Explorer.

Now I know how it should work without excessive classes.

Element highlighting doesn't work on mobile application. Android.

I tried to make test script like this:
https://github.com/appium/appium/blob/master/sample-code/examples/java/testng/src/test/java/com/saucelabs/appium/AndroidContactsTest.java.

Unfortunately, I faced up this:

org.openqa.selenium.NoSuchElementException: An element could not be located on the page using the given search parameters. (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 23 milliseconds
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: '2.39.0', revision: '14fa800511cc5d66d426e08b0b2ab926c7ed7398', time: '2013-12-16 13:18:38'
System info: host: 'hp', ip: '192.168.0.104', os.name: 'Windows 8', os.arch: 'amd64', os.version: '6.2', java.version: '1.7.0_51'
Session ID: ff982ff9-4571-4493-b389-bf0bf7fa1c65
Driver info: org.openqa.selenium.remote.RemoteWebDriver
Capabilities [{app=c:\Eclipse\ContactManager.apk, platform=WINDOWS, javascriptEnabled=true, databaseEnabled=false, browserName=, app-package=com.example.android.contactmanager, webStorageEnabled=false, device=Android, app-activity=.ContactManager, takesScreenshot=true, version=4.2}]

It happens when webelement is highlighted by its CSS change.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.