{
"cells": [
{
"cell_type": "markdown",
"metadata": {
"button": false,
"new_sheet": false,
"run_control": {
"read_only": false
},
"slideshow": {
"slide_type": "slide"
},
"tags": []
},
"source": [
"# Testing Graphical User Interfaces\n",
"\n",
"In this chapter, we explore how to generate tests for Graphical User Interfaces (GUIs), abstracting from our [previous examples on Web testing](WebFuzzer.ipynb). Building on general means to extract user interface elements and activate them, our techniques generalize to arbitrary graphical user interfaces, from rich Web applications to mobile apps, and systematically explore user interfaces through forms and navigation elements."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"execution": {
"iopub.execute_input": "2024-01-18T17:27:02.094228Z",
"iopub.status.busy": "2024-01-18T17:27:02.093498Z",
"iopub.status.idle": "2024-01-18T17:27:02.156095Z",
"shell.execute_reply": "2024-01-18T17:27:02.155752Z"
},
"slideshow": {
"slide_type": "skip"
}
},
"outputs": [
{
"data": {
"text/html": [
"\n",
" \n",
" "
],
"text/plain": [
"http://127.0.0.1:8800
"
],
"text/plain": [
"127.0.0.1 - - [18/Jan/2024 18:27:02] \"GET / HTTP/1.1\" 200 -\n",
"
"
],
"text/plain": [
"
127.0.0.1 - - [18/Jan/2024 18:27:06] \"GET / HTTP/1.1\" 200 -\n", "" ], "text/plain": [ "
127.0.0.1 - - [18/Jan/2024 18:27:06] \"GET /favicon.ico HTTP/1.1\" 404 -\n", "" ], "text/plain": [ "
127.0.0.1 - - [18/Jan/2024 18:27:06] INSERT INTO orders VALUES ('tshirt', 'Jane Doe', 'j.doe@example.com', 'Seattle', '98104')\n", "" ], "text/plain": [ "
127.0.0.1 - - [18/Jan/2024 18:27:06] \"GET /order?item=tshirt&name=Jane+Doe&email=j.doe%40example.com&city=Seattle&zip=98104&terms=on&submit=Place+order HTTP/1.1\" 200 -\n", "" ], "text/plain": [ "
127.0.0.1 - - [18/Jan/2024 18:27:06] \"GET /terms HTTP/1.1\" 200 -\n", "" ], "text/plain": [ "