ПЕРЕЛІК ДИСЦИПЛІН:
  • Адміністративне право
  • Арбітражний процес
  • Архітектура
  • Астрологія
  • Астрономія
  • Банківська справа
  • Безпека життєдіяльності
  • Біографії
  • Біологія
  • Біологія і хімія
  • Ботаніка та сільське гос-во
  • Бухгалтерський облік і аудит
  • Валютні відносини
  • Ветеринарія
  • Військова кафедра
  • Географія
  • Геодезія
  • Геологія
  • Етика
  • Держава і право
  • Цивільне право і процес
  • Діловодство
  • Гроші та кредит
  • Природничі науки
  • Журналістика
  • Екологія
  • Видавнича справа та поліграфія
  • Інвестиції
  • Іноземна мова
  • Інформатика
  • Інформатика, програмування
  • Юрист по наследству
  • Історичні особистості
  • Історія
  • Історія техніки
  • Кибернетика
  • Комунікації і зв'язок
  • Комп'ютерні науки
  • Косметологія
  • Короткий зміст творів
  • Криміналістика
  • Кримінологія
  • Криптология
  • Кулінарія
  • Культура і мистецтво
  • Культурологія
  • Російська література
  • Література і російська мова
  • Логіка
  • Логістика
  • Маркетинг
  • Математика
  • Медицина, здоров'я
  • Медичні науки
  • Міжнародне публічне право
  • Міжнародне приватне право
  • Міжнародні відносини
  • Менеджмент
  • Металургія
  • Москвоведение
  • Мовознавство
  • Музика
  • Муніципальне право
  • Податки, оподаткування
  •  
    Бесплатные рефераты
     

     

     

     

     

     

         
     
    Інструменти необхідні для тестування Linux
         

     

    Інформатика, програмування

    Інструменти необхідні для тестування Linux

    Максим Уваров

    Введення

    Дана стаття являє собою набір тих утиліт, з якими доводиться стикатися QA інженеру при тестуванні linux/unix подібних ТАРГЕТ. Тут описані лише деякі, основні інструменти, з якими Вам напевно доведеться працювати. Ця стаття буде корисна тим людям, які тільки збираються тестувати пристрої з Лінукса і мало знайомі з тими програмами, які їм має використовувати. Стаття складається в основному з назви програми та короткого опису, опису того, яким чином можна її використовувати для тестування. Хотілося б сподівається, що вона стане початком wiki сторінки з приблизно такою ж назвою.

    В даній статті мені хотілося б розповісти про інструментах для тестування програм на базі linux. Але більшість цих рішень буде застосовне до більшості unix-based систем. Склалося так, що більшість додатків - це консольні програми, які легко автоматизувати.

    В Лінуксі всі програми можна розділити на наступні групи:

    a) ядро (kernel)

    Сюди відноситься саме ядро, модулі ядра, і userspace level управління ядром (мається через/proc та/sys інтерфейси). Оскільки саме ядро написано на С і ASM, то для тестування вам в основному доведеться використовувати саме С. Звичайно це невеликі тестові модулі ядра, що перевіряють будь-які функції, або модуль з різними параметрами + скрипт. Як показує практика краще використовувати не один модуль перевіряючий відразу всю фічу, а багато модулів перевіряючих кожну функцію окремо. Варто також не забувати перевіряти всі можливі коди повернення функцій.

    б) для користувача програми (userspace level)

    Будь-які програми що працюють на операційній системі. Тут все не однозначно, все залежить від програми. Природно якщо програма написана наприклад на Java, то вам знадобиться сама Java, хоча б для того, щоб переконається, що програма взагалі збирається.

    в) ядро + призначені для користувача програми

    Швидше всього з цим видом додатків Вам доведеться зіткнуться найбільше. Дана схема містить у собі ядерний драйвер, що забезпечує низькорівневий зв'язок з будь-яким пристроєм і призначену для користувача програму.

    Інструменти

    Linux дуже зручний для програмування та тестування. Практично всі потрібні інструменти присутні в будь-якому діструбутіве або їх можна беспріпятственно завантажити, так як вони розповсюджуються під вільною ліцензією. Спробуємо описати всі необхідні інструменти:

    - GCC - Gnu C compiler

    Основний C, компілятор C + + linux. Якщо вам треба протестувати сам компілятор, то на сайті gcc є тести (входять в исходники gcc3.0 наприклад). Компіляція з опцією-g дозволить зробити налагодження за допомогою gdb.

    - bash

    Оболонка bash теж є в кожному дистрибутиві. Дуже зручна для написання скриптів.

    - expect

    Теж є практично в кожному дистрибутиві, використовується для автоматизації якого-небудь процесу. Простий, але не дуже зручний синтаксис TCL.

    - expect-perl і expect-python (pyexpect)

    Бібліотеки expect для скриптових мов perl і python.

    -gdb-Gnu Debuger

    Стандартний C/C + + відладчик. Має дуже багато можливостей, якщо ви їм не разу не користувалися, то раджу з ним ознайомиться. Використовуйте kgdb для ядра.

    -ltt - Linux Trace Toolkit

    Якщо ваше ядро підтримує LTT, то ви можете переглянути активні процеси/системні виклики в даний процес часу.

    -import і gimp

    Утиліта import з imagemagic і програма gipm можуть використовуватися для зняття скріншотів при тестуванні графічних додатків.

    -minicom

    Термнімальная програма для ручного тестування. Якщо потрібно автоматизувати роботу з консоллю, то краще використовувати expect (або в зв'язці з "cat" і "echo", або просто відкрити/dev/ttySx як файл; іноді другий випадок не підходить).

    -ltp - Linux Test Suite Page [ltp.sf.net]

    Дуже гарна колекція тестів. Включає в себе тести файлових систем, системних дзвінків і багато іншого.

    -netperf

    Утиліта що дозволяє перевірити продуктивність мережі.

    -ircp, irdump, openobex

    Уліліти для перевірки інфрачервоних порту.

    -telnet, ssh

    Віддалений shell. Якщо потрібно часто вводити одні й ті ж команди, можна скористатись expect. Є в будь-якому дистрибутиві.

    Список літератури

    Для підготовки даної роботи були використані матеріали з сайту http://software-testing.ru/

         
     
         
    Реферат Банк
     
    Рефераты
     
    Бесплатные рефераты
     

     

     

     

     

     

     

     
     
     
      Все права защищены. Reff.net.ua - українські реферати ! DMCA.com Protection Status