வலைபெயர்ப்பு சோதனைகள் மற்றும் தொடர்ச்சியான ஒருங்கிணைப்பு¶
தற்போதைய குறியீட்டின் பெரும்பகுதிக்கு டெச்சூட்கள் உள்ளன, எந்தவொரு புதிய செயல்பாட்டிற்கும் சோதனை பெட்டிகளைச் சேர்ப்பதன் மூலம் கவரேசை அதிகரிக்கின்றன, மேலும் அது செயல்படுகிறதா என்பதை சரிபார்க்கவும்.
தொடர்ச்சியான ஒருங்கிணைப்பு¶
குறியீடு தரத்தை உறுதிப்படுத்த சோதனைகளை இயக்க, ஆவணங்கள், குறியீடு லிண்டிங் மற்றும் பிற பணிகளை உருவாக்க வலைபெயர்ப்பு கிட்அப் செயல்கள் ஐ நம்பியுள்ளது.
கோடெகோவ் இயக்கப்பட்ட சோதனைகளிலிருந்து குறியீடு கவரேச் தகவல்களை சேகரிக்கிறது.
வெவ்வேறு அம்சங்களை சரிபார்க்க பல வேலைகள் உள்ளன:
Unit and functional tests using pytest.
Sphinx ஐப் பயன்படுத்தி ஆவண உருவாக்கம் மற்றும் வெளிப்புற இணைப்புகள்.
ruff மற்றும் pylint ஐப் பயன்படுத்தி குறியீடு லைண்டிங் மற்றும் தர பொறுப்பு.
CodeQL ஐப் பயன்படுத்தி குறியீடு பாதுகாப்பு ச்கேனிங்.
pre-commit ஐப் பயன்படுத்தி குறியீடு வடிவமைத்தல்.
ஆதரிக்கப்படும் அனைத்து வெளியீடுகளிலிருந்தும் இடம்பெயர்வு சோதனை
அமைவு சரிபார்ப்பு (உருவாக்கப்பட்ட மாவட்ட கோப்புகள் எதையும் இழக்காமல் இருப்பதை உறுதி செய்கிறது மற்றும் சோதிக்கப்படலாம்)
CIக்கான உள்ளமைவு .github/workflows கோப்பகத்தில் உள்ளது. இது ci கோப்பகத்தில் சேமிக்கப்பட்ட உதவி ச்கிரிப்ட்களை பெரிதும் பயன்படுத்துகிறது. ச்கிரிப்ட்களை கைமுறையாகவும் செயல்படுத்தலாம், ஆனால் அவற்றுக்கு பல சூழல் மாறிகள் தேவைப்படுகின்றன, பெரும்பாலும் தரவுத்தள இணைப்பைப் பயன்படுத்தவும் சோதிக்கவும் சாங்கோ அமைப்புக் கோப்பை வரையறுக்கிறது. அதற்கான எடுத்துக்காட்டு விளக்கம் scripts/test-database.sh: இல் உள்ளது.
# Copyright © Michal Čihař <michal@weblate.org>
#
# SPDX-License-Identifier: GPL-3.0-or-later
# Simple way to configure test database from environment
# shellcheck shell=sh
# Database backend to use postgresql / mysql / mariadb
export CI_DATABASE="${1:-postgresql}"
# Database server configuration
export CI_DB_USER=weblate
export CI_DB_PASSWORD=weblate
export CI_DB_HOST=127.0.0.1
# Django settings module to use
export DJANGO_SETTINGS_MODULE=weblate.settings_test
எளிய செயலாக்கம் இப்படி இருக்கும்:
source scripts/test-database.sh
./ci/run-migrate
./ci/run-test
./ci/run-docs
வெப்லேட்டின் உள்ளக சோதனை¶
சோதனையை இயக்கும் முன், சோதனை சார்புகள் நிறுவப்பட்டுள்ளதை உறுதி செய்யவும். இதை pip install -e .[test] மூலம் செய்யலாம்.
Pytest ஐப் பயன்படுத்தி சோதனை¶
சோதனைகளை இயக்குவதற்கு முன் நீங்கள் நிலையான கோப்புகளை சேகரிக்க வேண்டும், ஏனெனில் சில சோதனைகள் அவை இருப்பதை நம்பியுள்ளன:
DJANGO_SETTINGS_MODULE=weblate.settings_test ./manage.py collectstatic
உள்நாட்டில் ஒரு டெச்ட்சூட்டை இயக்க நீங்கள் பைடெச்ட் ஐப் பயன்படுத்தலாம்:
pytest weblate
ஒரு தனிப்பட்ட சோதனை கோப்பை இயக்குதல்:
pytest weblate/utils/tests/test_search.py
Hint
சோதனைகளுக்குப் பயன்படுத்த உங்களுக்கு ஒரு தரவுத்தள (PostgreSQL) சேவையகம் தேவைப்படும். இயல்பாக, test_ முன்னொட்டுடன் சோதனைகளை இயக்க, சாங்கோ தனித்தனி தரவுத்தளத்தை உருவாக்குகிறது, எனவே உங்கள் அமைப்புகள் weblate ஐப் பயன்படுத்தும் வகையில் கட்டமைக்கப்பட்டிருந்தால், சோதனைகள் test_weblate தரவுத்தளத்தைப் பயன்படுத்தும். அமைவு வழிமுறைகளுக்கு வலைபெயர்ப்புடுக்கான தரவுத்தள அமைப்பு ஐப் பார்க்கவும்.
weblate/settings_test.py தொஒ சூழலிலும் பயன்படுத்தப்படுகிறது (பார்க்க தொடர்ச்சியான ஒருங்கிணைப்பு) மேலும் சூழல் மாறிகளைப் பயன்படுத்தி சரிசெய்யலாம்:
export CI_DATABASE=postgresql
export CI_DB_USER=weblate
export CI_DB_PASSWORD=weblate
export CI_DB_HOST=127.0.0.1
export CI_DB_PORT=60000
export DJANGO_SETTINGS_MODULE=weblate.settings_test
Hint
உருவாக்குபவர் கப்பல்துறை கொள்கலனுக்குள் சோதனைகள் செயல்படுத்தப்படலாம், பார்க்கவும் டாக்கரில் உள்நாட்டில் வலைபெயர்ப்பு இயங்குகிறது.
See also
சாங்கோவிற்கான சோதனைகளை ஓட்டுவது மற்றும் எழுதுவது பற்றிய கூடுதல் தகவலுக்கு Testing in Django ஐப் பார்க்கவும்.
வலைபெயர்ப்பு தொகுதிகளின் உள்ளக சோதனை¶
சோதனைகள் py.test ஐப் பயன்படுத்தி செயல்படுத்தப்படுகின்றன. முதலில் நீங்கள் சோதனை தேவைகளை நிறுவ வேண்டும்:
uv pip install -e '.[dev]'
களஞ்சிய செக்அவுட்டில் சோதனைச்சூட்டை நீங்கள் செயல்படுத்தலாம்:
py.test
சோதனை களஞ்சியம்¶
Many of the tests in the Weblate test suite use the test repository. The test
suite repository is maintained at https://github.com/WeblateOrg/test. The
script scripts/pack-test-data.sh is then used to generate a tarball
with a repository for each of the supported version control systems. These are
stored as weblate/trans/tests/data/test-base-repo.git.tar,
weblate/trans/tests/data/test-base-repo.hg.tar, and
weblate/trans/tests/data/test-base-repo.svn.tar in the Weblate
repository.
https://github.com/WeblateOrg/test களஞ்சியம் வெளியீட்டு நேரத்தில் குறியிடப்பட்டுள்ளது, இது வெளியீட்டு நேரத்தில் பயன்படுத்தப்படும் சோதனைத் தரவை அணுக வெளியீட்டு குறிச்சொற்களைப் பயன்படுத்த முடியும் என்பதை உறுதி செய்கிறது. ச்கிரிப்ட் முடிந்தவரை மீண்டும் உருவாக்கக்கூடிய டார்பால்களை உருவாக்க முயற்சிக்கிறது.