Module 5

The Language of Logic

Illustration of the Rosetta Stone representing interface definitions

Precision in language leads to precision in thought. If you have to explain what an action does, you have likely named it wrong. In ABT, we treat our test names and arguments with the same rigor as a legal contract.

The Verb-Noun Rule

Actions should always be named with a verb followed by a noun. This creates a predictable, readable sentence structure.

Incorrectbalance_check
invoice_new
Correctcheck_balance
create_invoice

The Rosetta Stone (Interface Definitions)

We need a translator between human intent and machine reality. Interface Definitions map logical names to technical identifiers.

# The Map
"Submit Button" = "#btn_submit_v2"
"User Field" = "input[name='username']"

When the developer changes the ID to #btn_submit_v3, you update this map once. Your thousands of tests remain untouched.

The Simplicity Principle

Keep arguments simple. Use default values to avoid clutter. If an action requires 15 arguments, it is likely doing too much (see: The "Swiss Army Knife" Anti-Pattern).