Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
T
test-support
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Павел Бекетов
test-support
Commits
a793c287
Commit
a793c287
authored
Mar 17, 2025
by
Pavel Beketov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add added tasks
parent
6db62a1d
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
123 additions
and
0 deletions
+123
-0
README.md
README.md
+110
-0
ping_check.sh
ping_check.sh
+13
-0
No files found.
README.md
View file @
a793c287
## **Тестовое задание для кандидата в техническую поддержку**
---
### **Цель задания**
Проверить Ваши навыки анализа кода/скриптов, написания структурированной документации и тестирования функционала.
### **Описание задания**
Задание состоит из двух частей:
1.
Вам предстоит изучить работу команды
**$ epm mark**
и создать для нее документацию, а также провести тестирование.
2.
Вам предстоит изучить скрипт
**ping_check.sh**
, найти ошибки в коде и исправить их, провести тестирование и составить документацию.
### **Технические требования**
1.
Для выполнения задания требуется ОС Linux (рекомендуется ALT Linux). Вы можете установить ее в виртуальную среду (virtualbox).
2.
Склонируйте репозиторий с заданием на свою машину, а ответы публикуйте в Вашем собственном репозитории на GitHub.
---
## **Задача №1**
### 1. **Установите EPM**
-
Это можно сделать командой:
```# curl -sL https://eepm.ru/epm.sh | bash /dev/stdin ei```
-
Документация доступна по адресу https://wiki.eepm.ru
### 2. **Изучите команду epm mark**
-
Разберитесь, как работает команда.
-
Проанализируйте ее поведение через запуск с различными аргументами
### 3. **Напишите документацию**
Оформите ее в формате Markdown. Структура:
-
Описание команды.
-
Синтаксис использования.
-
Список опций/аргументов с пояснениями.
-
Примеры использования (1–3 сценария).
-
Примечания (ограничения, зависимости, особенности)
### 4. **Протестируйте команду**
-
Проверьте основные сценарии работы.
-
Выявите возможные ошибки или неочевидное поведение.
-
Составьте краткий отчет: что тестировали, какие баги обнаружили, как воспроизвести
### 5. **Предложите улучшения (опционально)**
На основе анализа дайте 2–3 рекомендации по оптимизации команды (например: добавление, новых флагов, упрощение синтаксиса).
###**Требования к выполнению**
-
Документация должна быть понятной для новичка, без технического жаргона.
-
В примерах укажите команды и ожидаемый вывод.
-
В тестовом отчете выделите критические и незначительные баги (если есть).
###**Формат сдачи**
-
Файл README.md с документацией.
-
Файл TEST_REPORT.md с результатами тестирования и рекомендациями.
-
Приложите краткие комментарии по структуре кода (что делает каждая часть).
### **Критерии оценки задачи №1**
|
**Критерий**
|
** Максимальный балл**
|
**Описание**
|
|----------------------------|------------------------|----------------|
| Полнота документации | 5 | Документация содержит все требуемые разделы (описание, синтаксис, примеры и т.д.), примеры детальны, функционал описан без пропусков. |
| Качество тестирования | 5 | Проверены основные и крайние сценарии (например, неверные аргументы), выявлены критические и незначительные баги. |
| Четкость и структурированность | 3 | Материалы логично организованы: есть разделение на разделы, используются списки, таблицы, код-блоки. |
| Общая грамотность | 2 | Отсутствуют ошибки в тексте, термины используются корректно, документация понятна без дополнительных пояснений. |
---
## **Задача №2**
В репозитории Вам предоставлен Bash-скрипт
**(ping_check.sh)**
, который мониторит доступность хоста.
###**Ваша задача:**
1.
Изучить код и описать его работу (что делает каждая часть скрипта).
2.
Найти и исправить ошибки, которые мешают корректной работе.
3.
Предложить улучшения для повышения надежности/функциональности.
###**Требования к выполнению**
#### **1. Описание работы скрипта:**
1.
Объясните назначение скрипта, логику условий, использование переменных.
2.
Укажите, какие данные куда записываются и при каких условиях.
#### **2. Поиск ошибок:**
1.
Выявите все ошибки (синтаксические, логические, опечатки).
2.
Исправьте их в коде и объясните, как они влияли на работу.
3.
Улучшения (опционально, но приветствуется).
4.
Предложите изменения, которые сделают скрипт более надежным или удобным (опционально).
###**Формат сдачи**
-
Исправленный скрипт ping_check.sh.
-
Файл README.md с документацией по использованию скрипта и по структуре кода скрипта.
-
Файл TEST_REPORT.md с результатами тестирования.
-
Приложите краткие комментарии по улучшению кода (опционально).
-
Приложите изменения, которые сделают скрипт более надежным или удобным (опционально).
### Примечание
Ошибки считаются найденными, если Вы дали им техническое обоснование.
### **Критерии оценки задачи №2**
|
**Категория**
|
** Максимальный балл**
|
**Описание**
|
|-----------------------|-------------------------------|------------------|
| Понимание кода | 4 | Полное и точное описание работы скрипта, объяснение всех ключевых элементов. |
| Поиск ошибок | 5 | Найдены и корректно исправлены все ошибки. |
| Улучшения | 1 | Предложены релевантные улучшения (например, проверка прав, обработка ошибок записи в лог). |
## **Желаем удачи!**
ping_check.sh
0 → 100755
View file @
a793c287
#!/bin/bash
HOST
=
"ya.ru"
LOG_FILE
=
"ping_check.log"
ping
-c
1
$HOSTS
>
/dev/null
if
[
$?
-ne
0]
;
then
echo
"
$(
date
)
: Host
$HOST
is down."
>>
$LOG_FILE
else
echo
"
$(
date
)
: Host
$HOST
is up."
>>
$LOG_FILE
fi
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment