{
"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": "2023-01-07T14:53:19.762277Z",
"iopub.status.busy": "2023-01-07T14:53:19.760331Z",
"iopub.status.idle": "2023-01-07T14:53:19.817987Z",
"shell.execute_reply": "2023-01-07T14:53:19.818230Z"
},
"slideshow": {
"slide_type": "skip"
}
},
"outputs": [
{
"data": {
"text/html": [
"\n",
" \n",
" "
],
"text/plain": [
"http://127.0.0.1:8800
"
],
"text/plain": [
"127.0.0.1 - - [07/Jan/2023 15:53:20] \"GET / HTTP/1.1\" 200 -\n",
"
"
],
"text/plain": [
"
127.0.0.1 - - [07/Jan/2023 15:53:23] \"GET / HTTP/1.1\" 200 -\n", "" ], "text/plain": [ "
127.0.0.1 - - [07/Jan/2023 15:53:23] \"GET /favicon.ico HTTP/1.1\" 404 -\n", "" ], "text/plain": [ "
127.0.0.1 - - [07/Jan/2023 15:53:23] INSERT INTO orders VALUES ('tshirt', 'Jane Doe', 'j.doe@example.com', 'Seattle', '98104')\n", "" ], "text/plain": [ "
127.0.0.1 - - [07/Jan/2023 15:53:23] \"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 - - [07/Jan/2023 15:53:23] \"GET /terms HTTP/1.1\" 200 -\n", "" ], "text/plain": [ "