LaptopTester/README.ru.md
bearincapsule e17264fb95 refactor for public release
split into config/scanner/sheet_manager modules; hardware lists and
column map moved to sheet_config.json (example provided); fix crash
on submit (missing inp_tester), row=2 overwrite bug, GPU token
matching, SSD decimal-vs-binary mismatch, net accounts returncode
check, rescan page switch; tools/ gitignored with download README
2026-06-11 19:53:17 +03:00

3.8 KiB
Raw Blame History

English

LaptopTester

Windows-инструмент для QA-приёмки ноутбуков: автоматически определяет комплектацию, проводит через чеклист тестирования и записывает результаты в Google Sheets.

python tester.py
# Сканирует WMI + smartctl → заполняет бренд, модель, CPU, RAM, SSD, GPU
# → страница чеклиста: звук/экран/клавиатура/камера/... → одна кнопка отправляет в Google Sheets

Важно: При запуске программа выполняет net accounts /maxpwage:unlimited (сброс срока действия пароля Windows). Требуются права администратора.

Установка

Требования: Windows 10/11, Python 3.9+

pip install -r requirements.txt
  1. Скопируйте sheet_config.example.json → sheet_config.json и настройте под свою таблицу (имя листа, номера столбцов, списки железа).
  2. Скачайте утилиты для тестирования из tools/README.md в папку tools/.
  3. Добавьте Google-ключи (на выбор):
    • service_key.json — ключ сервисного аккаунта (рекомендуется для командного использования)
    • credentials.json — OAuth 2.0 client JSON (при первом запуске откроется браузер для входа)

Что умеет

  • Автоопределение железа: бренд, модель, CPU, RAM — через WMI; объём диска и данные SMART (часы работы, циклы перезарядки, оценка состояния) — через smartctl; GPU — через WMI. Всё сопоставляется со списками из конфига.
  • Страница чеклиста: звук, экран, тачскрин, клавиатура, камера, микрофон, тачпад, разъёмы, биометрия, батарейка CMOS, пароли BIOS/Windows, LTE, драйверы, цвета — каждый пункт выпадающим списком.
  • Запись в Google Sheets: ищет строку по серийному номеру (обновляет найденную, добавляет новую), записывает все поля одним пакетным запросом.

Полезное

  • Вторая батарея: включите группу «Вторая батарея» чтобы ввести циклы/ёмкость второй АКБ.
  • Рескан: кнопка «🔄 Рескан» повторно запускает определение железа без перезапуска программы.
  • Оценка SMART: поле SSD показывает <оценка>/<часы>/<циклы> — A (<1000 ч), B (1000–15000 ч), C (>15000 ч).

Для разработчиков

Стек: Python 3, PyQt5, WMI, gspread, google-auth. Сборка: pyinstaller LaptopTester.spec

Карта столбцов и списки опций железа хранятся в sheet_config.json — адаптация под другую таблицу не требует правки кода.

Авторства

Необязательные сторонние утилиты (не включены — ссылки на скачивание в tools/README.md): smartmontools, NirSoft BatteryInfoView, SoftwareOK IsMyLcdOK / IsMyTouchScreenOK, PassMark KeyboardTest, OCCT, CrystalDiskInfo.

Лицензия

MIT