Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/un-def/imarker-tests
WebIndex robot tests
https://github.com/un-def/imarker-tests
Last synced: 23 days ago
JSON representation
WebIndex robot tests
- Host: GitHub
- URL: https://github.com/un-def/imarker-tests
- Owner: un-def
- Created: 2015-01-29T08:42:24.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2015-01-29T08:42:42.000Z (almost 10 years ago)
- Last Synced: 2023-02-26T05:46:42.965Z (over 1 year ago)
- Language: Python
- Homepage:
- Size: 230 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
imarker-tests
=============Два небольших теста, написанные для исследования поведения бота [одной сомнительной веб-аналитики imarker](http://habrahabr.ru/post/247465/) (IP 92.242.35.54; User-Agent: WebIndex). Для интересующихся — результаты тестирования в предпоследнем абзаце.
Тесты cookie и post проверяют, дублирует ли бот cookies и message body из POST-запроса (данные форм) соответственно. Оба теста состоят из статического файла ```index.html``` (страница входа), который должен располагаться на одном домене, и WSGI-скрипта ```run.py```, который следует запустить на поддомене главного домена (для post-теста можно использовать два независимых домена) — это отражено в структуре директорий. В файлах ```index.html``` следует изменить адрес ‘sub.example.com’ на адрес, на котором запущен ```run.py```.
```run.py``` представляет собой WSGI-приложение, запускаемое с помощью FastCGI-сервера из пакета [flup](http://www.saddi.com/software/flup/) — если вы используете другой способ, удалите соответствующие строки импорта и запуска из кода. При каждом запросе приложение сохраняет в базу данных SQLite 3 информацию о нём (HTTP_HOST, REQUEST_METHOD, REQUEST_URI, REMOTE_ADDR, HTTP_USER_AGENT и значение cookie или тело POST-запроса, сформированные с помощью ```index.html```). Для создания файла БД используйте прилагающийся сценарий ```create_db.py```. Созданный файл ```test.db``` должен располагаться рядом с ```run.py``` (в противном случае измените путь к нему).
В процессе тестирования бот WebIndex ни разу не использовал cookie и игнорировал POST-запросы (дублировал только GET-запросы пользователей), однако, учитывая малую продолжительность и охват тестов, не следует делать выводы об использовании или неиспользовании соответствующих пользовательских данных.
*Примечание:* выбор технологий обусловлен располагаемым оборудованием (тесты запускались на маршрутизаторе под управлением OpenWrt c веб-сервером lighttpd и Python 2.7), а подача и оформление тестов, включая используемые изображения — своеобразным (плохим) чувством юмора автора.