Побољавање квалитета Џамија

Улазни тестирања

  • Тешко је направити јединични тест на пројекту Џами због услова трке на више нивоа зависности.

  • We use lcov for the coverage, you can find the lcov’s configuration in the daemon’s Makefile.am. Also, the coverage can be found at https://docs.jami.net/coverage/ and https://dl.jami.net/docs/dhtnet/coverage

  • Потребно је имплементирати систем да почне убеђивати тим да направи јединични тест за нови код пре спојајања

  • Можете их покренути правећи make check у папчији дајмона или одвојено у папчији единице тестирања са гдб: gdb ut_media_encoder

  • Окружење треба поставити са –disable-shared током команде./configure

  • Clients also have tests (cf jami-client-qt/tests for Desktop, jami-client-android/jami-android/app/src/androidTest for Android)

Тестирања интеграције

  • Svako urezivanje prolazi kroz integracijske testove u docker-ima na mašinama za pravljenje koje možete pronaći na: jenkins.jami.net

  • Код-ревизија се врши од стране другаца девелопера, понекад код преразматра исти девелопер, ово треба избећи да би се нагласио закон Линуса.

  • Сонарквуб омогућава Џенкинсу да изгради Џами и провери линтинг. Можете пронаћи филтри и резултате на: sonar- jami.savoirfairelinux.net Сонар користи кланг-тиди као препроцесорски компилатор линтинг, можете пронаћи клангс филтри у.clang-тиди датотеци у папчици дајмона.

  • On SFLVault sonarqube can be found at service m#2637 and admin logins at service s#7169

Док и поврат:

  • Све документације можете наћи на доц.џами.нет

  • Проблем постављају програмери или корисници на git.jami.net

Agent

Every night, hundred of calls are tested via 2 Agents and a message is posted every morning in the chat with the result (if all call succeeded or not)

Испитивање пуха

Пре него што сва пусте, сваки клијент мора да прође кроз листу сценарија.

Сценарија су описана овде: Jami dim tests

Они се прегледају од стране КА ДТ. пре него што их пошаље програмерима ако је потребно.

Ако издање садржи мрежни ангажован који је спојио, КА департација. Треба да може да аутоматизује различите тестове повезивања (као што је описано испод у конфигурацијама позива)

Позива конфигурације.

Ово је листа конфигурација мреже које треба тестирати:

И то је било у току, и то је било у току.

Ако су обе стране само IPv4 без ТУРН/СТУН/УПНП, позив би требало да буде само локалан.

Шта треба учинити

  • Uspostavite sistem unutar tima koji će osigurati održavanje i kreiranje jediničnih testova.

  • Each major functionality should be tested as whole by adding a test (i.e. making sure a message was received, the call was ended well on both side, etc…)

  • Свака нова функционалност треба тестирати на свакој платформи пре спојања како би се смањила регресија

  • Интегрирајте сонаркубе на сваки клијент

  • Автоматизација тестирања понашања Џамија на мрежној компатибилности