# Eli Sarver

All Categories: golang(1) go(1) gokit.io(1) home

# Pareto in Action

### principled testing

As simple as testing seems to those outside the test automation world may seem, a lot of thought actually goes into getting real value quickly out of the tests we write. There are many techniques we use to make testing easier. Some of these techniques are software engineering related, but some of the best techniques are cognitive.

. . .

December 21, 2012

### Scalatest is neat.

It turns out that the things I was trying to do with Selophane are already implemented in several libraries. I'm not mad; my solution to the issue of PageFactory is still somewhat cool. It is still one of the few Java based libraries to attempt a PageFactory hack, and it's definitely on the right track.

The problem is that . . .

December 18, 2012

# Wrapping WebElement 2

### Automating the Wrappers

In the previous post, I outlined a basic WebElement wrapper called Element. Element as a WebElement wrapper
can only go so far in guaranteeing behavior. For starts the structure to wrap a WebElement is cumbersome:

Checkbox cb = new CheckBox(checkBoxWebElement);


In this article I'll explain how we push WebDriver into . . .

December 10, 2012

# Improving TestNG Reporting

Recently, the test suite I maintain kept crashing in the reporting phase. After some digging, and a number of report-free runs, I found the problem.

There's a bug in TestNG's reporter that is a known issue with using a StringBuffer to generate large amounts of html. This is simple to fix. We just have to disable the html . . .

December 09, 2012

# Wrapping WebElement 1

### Basic Wrapping

I'm starting a series called "Wrapping WebElement" that takes you through my process of creating selophane,
a library that wraps WebElements with functionality. Work on the library is ongoing, with the codebase opening up by New Year's Day. But documentation and testing must come before a public release.

We . . .

December 08, 2012

# Enabling Quiet Exceptions

From Selenium 2.23 and beyond, you can save a bit of bandwidth on failure by enabling the following feature in capabilities:

capObj.setCapability("webdriver.remote.quietExceptions", true);


This disables the default behavior of taking a screen-shot, UUEncoding it, and sending it back to the host machine. In the minimum . . .