Webkit browser & automation - testing

Have anyone come across open source tools/framework for Webkit browser test automation?

There is (not tried) WebAii Automation Framework where the current Beta 2.0.0.1 has Safari 3 support added on windows (it's free but I don't think it's opensource).
If you want do it yourself:
On Apple you should be able to script it AppleScript or from
MAC OS X > 10.4: there is Automator
On Windows you might consider using P/Invoke and looking at the WinLauncher tool from WebKitTools

I haven't seen a framework to run the tests but if you're looking for input to test against there is Ian Hickson's adhoc and evil test suites in addition to the traditional acid tests.

Which WebKit? Selenium seems to have drivers for several WebKit-based browsers.
WebKit itself has a test suite, to be implemented by each platform, which the WebKit documentation calls DRT or DumpRenderTree (see also LayoutTestController).

Related

Can I run Robot tests with Appium Browserstack?

Can I run tests written Robot Framework in Browserstack for automated testing?
If BrowserStack does not support it which framework supports it?
Sauce labs
Perfecto
Kobiton
Headspin
Also, I am wondering whether other frameworks support Robot with Appium or not.
Yes, you can use Robot Framework with Appium on BrowserStack's Automate as well as for App Automate on real devices.
For reference and walkthrough guide, please refer to the documentation here:
https://github.com/nithyamn/bstack-robot-framework#automate
https://github.com/nithyamn/bs-robot-framework#app-automate
Hope this helps.
Regards,
BrowserStack Support
You can use Robotframework with Sauce Labs, here are some code examples:
https://github.com/saucelabs-training/demo-python/tree/main/examples/robotframework

How to run chrome driver in background using selenium with Ruby for Mac OSx?

Sometimes, the browser window comes to the foreground and I'm clicking it accidentally which makes the test fails on some occasions. So, I just want to know, is there any way that I can keep the chrome driver window in the background.
Details:
< ChromeDriver version: 2.28.455517 >
< Chrome version: 58.0.3029.96 >
A few words about the solution to your Question:
As per best practices, you should try to execute your Test-scripts / Automation-framework in an isolated Test Environment with all the required Hardware and Software configurations and setup.
While the execution is in process, there should be no manual user interaction in-between.
In-case you want to do multitasking, use Ghost/Headless Browsers. You will find a detailed discussion in Which drivers support “no-browser”/“headless” testing?.
Htmlunitdriver & PhantomJS are the two mostly widely used Ghost/Headless Browsers.
If you are specific about using ChromeDriver you can use Chrome headless as per the documentation here.
First and foremost rule is that we should not do any other work while your scripts are running. We may use actions class for hovering., etc, while you move your cursor it may lead to failing your test case. Hope It will be useful to you.
You can try using headless switch available for Chrome.
This will run the automation in the headless mode and you will not be disturbed.
options = Selenium::WebDriver::Chrome::Options.new
options.add_argument('--headless')
Afterward, initiate Chrome.

Are there NPAPI testing tools?

I'm using firebreath to build a plugin that downloads an application and runs it (something very simple). I know that some browsers are dropping npapi support, but I need to run this plugin just in old versions of browsers (e.g. IE 6, Firefox 38, Chrome 31). I'd like to know if there are any tools that could help testing the plugin's in a variety of environments (e.g. Firefox on Linux,windows, Safari on OSX). So far, what I'm doing, is setting up each environment (windows, linux, Mac) and building/installing the plugins manually. I think cross browser testing tools that I've found on internet won't help, because they don't allow plugin install.
I couldn't find anything on my research, so thanks in advance
Any browser automation tool capable of instrumenting pages on all of those platforms can test NPAPI, since it runs in a browser...
so, Selenium, for example.

Is it possible to check and set wx.html2 to use WebKit on Windows?

Is it possible to do a combination of a check and a engine-switch on Windows for wx.html2 in wxPython 2.9.4.0 (development version)?
What I want to achieve is; to let the wx.html2 library use WebKit on Windows if Safari, Chrome or Opera (WebKit/Blink) is installed.
Does anyone have any experience with this and maybe how to achieve it? I also wonder where wx.html2 looks for the engine on each OS and how it asks to render it.
I tried using wx.webkit. But there are so many issues like; lack of documentation and the implementation of the object seems to break on different operating systems.
How does wxPython know to use Webkit? It doesn't, it's parent library, wxWidgets does a compile-time check. It assumes Webkit is installed if it's built on Mac or Linux, and assumes IE is installed if it's on Windows.
If you really want WebKit/Blink, then perhaps consider CEFPython, an embedded Chrome. There's an example at that link of a (very simple) wxPython application.

Is Selenium platform specific?

Is Selenium paltform specific. If yes then how can I develop a cross-platform specific application with it by first identifying the platform and then call the platform-specific selenium routines.
The IDE is a firefox plugin, but you can develop tests in multiple languages, which run on and against multiple platforms (including multiple browsers). Not really sure what you're trying to accomplish, but hopefully that helps.
Selenium is platform independent. This is because you run a Selenium RC server (which is a java application and hence can be run on any platform). Then you send selenese commands to the server which controls the testing activity on the browser. To send the selenese commands you can use any language (such as Java, PHP, Ruby etc). Now this again does not limit you in any way to a certain OS.
If you are using the Firefox plugin IDE to run the test cases then of course the platforms supported would be limited to platforms supported by Firefox.
Hope that answers.
I may be misunderstanding your question, but:
With Selenium RC (or Grid, more specifically), you can specify what platform you want your test to run on. Each node registers with the hub under a particular platform, and each test's DesiredCapabilities can request a platform.
As the other answers have stated, Selenium itself is platform independent but you can run your tests on a by-platform by-browser basis. Either way, the tests (in theory) should look the same and use the same native Selenium commands.
I am not so familiar with Selenium, but it looks to me that it works almost everywhere where you can install Firefox 2+.
Platforms Supported by Selenium
I'm using Selenium for a project that runs under Windows and Ubuntu. The only platform specific code is for starting the environment where it executes (headless X server under Ubuntu) and starting the Selenium jar file. The rest is all platform independent. I don't know if this will also work as smoothly when you try to use different browsers (I'm using Firefox on both platforms).