{"title":"Testning av GeoDjango-appar","version":"5.2","locale":"sv","docname":"ref/contrib/gis/testing","url":"/sv/5.2/ref/contrib/gis/testing/","canonical":"https://djangodocs.dev/sv/5.2/ref/contrib/gis/testing/","summary":"I den här dokumentationen finns några ytterligare anteckningar och inställningar för PostGIS -användare. PostGIS Link to this heading # Inställningar Link to this…","html":"<h1>Testning av GeoDjango-appar<a class=\"heading-anchor\" href=\"#testing-geodjango-apps\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<p>I den här dokumentationen finns några ytterligare anteckningar och inställningar för <a class=\"reference internal\" href=\"#testing-postgis\"><span class=\"std std-ref\">PostGIS</span></a>-användare.</p>\n<section id=\"postgis\">\n<span id=\"testing-postgis\"></span><h2>PostGIS<a class=\"heading-anchor\" href=\"#postgis\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<section id=\"settings\">\n<h3>Inställningar<a class=\"heading-anchor\" href=\"#settings\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<aside class=\"admonition admonition-note\" role=\"note\">\n<p class=\"admonition-title\">Observera</p>\n<p>Inställningarna nedan har förnuftiga standardvärden och bör inte behöva ställas in manuellt.</p>\n</aside>\n<section id=\"postgis-version\">\n<span id=\"std-setting-POSTGIS_VERSION\"></span><h4><code class=\"docutils literal notranslate\"><span class=\"pre\">POSTGIS_VERSION</span></code><a class=\"heading-anchor\" href=\"#postgis-version\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h4>\n<p>När GeoDjangos spatiala backend initieras på PostGIS måste den utföra en SQL-fråga för att bestämma versionen för att ta reda på vilka funktioner som är tillgängliga. Avancerade användare som vill undvika denna extra fråga kan ställa in versionen manuellt med hjälp av en 3-tupel av heltal som anger major-, minor- och mikroversionsnumren för PostGIS. För att till exempel konfigurera för PostGIS X.Y.Z skulle du använda:</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">POSTGIS_VERSION</span> <span class=\"o\">=</span> <span class=\"p\">(</span><span class=\"n\">X</span><span class=\"p\">,</span> <span class=\"n\">Y</span><span class=\"p\">,</span> <span class=\"n\">Z</span><span class=\"p\">)</span>\n</code></pre></div>\n</section>\n</section>\n<section id=\"obtaining-sufficient-privileges\">\n<h3>Erhållande av tillräckliga privilegier<a class=\"heading-anchor\" href=\"#obtaining-sufficient-privileges\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>Beroende på din konfiguration beskriver detta avsnitt flera metoder för att konfigurera en databasanvändare med tillräckliga behörigheter för att köra tester för GeoDjango-applikationer på PostgreSQL. Om din <a class=\"reference internal\" href=\"/sv/5.2/ref/contrib/gis/install/postgis/#spatialdb-template\"><span class=\"std std-ref\">spatial databasmall</span></a> skapades som i instruktionerna, behöver din testdatabasanvändare bara ha möjlighet att skapa databaser. I andra konfigurationer kan det krävas att du använder en databas-superanvändare.</p>\n<section id=\"create-database-user\">\n<h4>Skapa databasanvändare<a class=\"heading-anchor\" href=\"#create-database-user\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h4>\n<p>Använd följande kommando för att skapa en databasanvändare med möjlighet att skapa databaser:</p>\n<div class=\"code-block\" data-language=\"shell\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Shell code\"><code>$<span class=\"w\"> </span>createuser<span class=\"w\"> </span>--createdb<span class=\"w\"> </span>-R<span class=\"w\"> </span>-S<span class=\"w\"> </span>&lt;user_name&gt;\n</code></pre></div>\n<p>Flaggorna <code class=\"docutils literal notranslate\"><span class=\"pre\">-R</span> <span class=\"pre\">-S</span></code> anger att vi inte vill att användaren ska ha möjlighet att skapa ytterligare användare (roller) respektive vara superanvändare.</p>\n<p>Alternativt kan du ändra en befintlig användares roll från SQL-skalet (förutsatt att detta görs från ett befintligt superanvändarkonto):</p>\n<div class=\"code-block\" data-language=\"psql\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">SQL</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"SQL code\"><code><span class=\"n\">postgres</span><span class=\"o\">#</span><span class=\"w\"> </span><span class=\"k\">ALTER</span><span class=\"w\"> </span><span class=\"k\">ROLE</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"n\">user_name</span><span class=\"o\">&gt;</span><span class=\"w\"> </span><span class=\"n\">CREATEDB</span><span class=\"w\"> </span><span class=\"n\">NOSUPERUSER</span><span class=\"w\"> </span><span class=\"n\">NOCREATEROLE</span><span class=\"p\">;</span>\n</code></pre></div>\n</section>\n<section id=\"create-database-superuser\">\n<h4>Skapa superanvändare för databasen<a class=\"heading-anchor\" href=\"#create-database-superuser\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h4>\n<p>Detta kan t.ex. göras när användaren skapas:</p>\n<div class=\"code-block\" data-language=\"shell\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Shell code\"><code>$<span class=\"w\"> </span>createuser<span class=\"w\"> </span>--superuser<span class=\"w\"> </span>&lt;user_name&gt;\n</code></pre></div>\n<p>Eller så kan du ändra användarens roll från SQL-skalet (förutsatt att detta görs från ett befintligt superanvändarkonto):</p>\n<div class=\"code-block\" data-language=\"psql\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">SQL</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"SQL code\"><code><span class=\"n\">postgres</span><span class=\"o\">#</span><span class=\"w\"> </span><span class=\"k\">ALTER</span><span class=\"w\"> </span><span class=\"k\">ROLE</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"n\">user_name</span><span class=\"o\">&gt;</span><span class=\"w\"> </span><span class=\"n\">SUPERUSER</span><span class=\"p\">;</span>\n</code></pre></div>\n</section>\n</section>\n<section id=\"windows\">\n<h3>Fönster<a class=\"heading-anchor\" href=\"#windows\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>På Windows-plattformar kan du använda verktyget pgAdmin III för att lägga till superanvändarprivilegier för din databasanvändare.</p>\n<p>Som standard innehåller PostGIS-installationsprogrammet på Windows en mall för en rumslig databas med namnet ”template_postgis”.</p>\n</section>\n</section>\n<section id=\"geodjango-tests\">\n<span id=\"id1\"></span><h2>GeoDjango-test<a class=\"heading-anchor\" href=\"#geodjango-tests\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>För att GeoDjango-testerna ska köras när du <a class=\"reference internal\" href=\"/sv/5.2/internals/contributing/writing-code/unit-tests/#running-unit-tests\"><span class=\"std std-ref\">kör Django-testsviten</span></a> med <code class=\"docutils literal notranslate\"><span class=\"pre\">runtests.py</span></code> måste alla databaser i inställningsfilen använda en av <a class=\"reference internal\" href=\"/sv/5.2/ref/contrib/gis/db-api/#spatial-backends\"><span class=\"std std-ref\">spatial databasbackends</span></a>.</p>\n<section id=\"example\">\n<h3>Exempel<a class=\"heading-anchor\" href=\"#example\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>Följande är ett exempel på en renodlad inställningsfil med spatiala backends som kan användas för att köra hela Djangos testsvit, inklusive de i <a class=\"reference internal\" href=\"/sv/5.2/ref/contrib/gis/#module-django.contrib.gis\" title=\"django.contrib.gis: Geographic Information System (GIS) extensions for Django\"><code class=\"xref py py-mod docutils literal notranslate\"><span class=\"pre\">django.contrib.gis</span></code></a>:</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">DATABASES</span> <span class=\"o\">=</span> <span class=\"p\">{</span>\n    <span class=\"s2\">&quot;default&quot;</span><span class=\"p\">:</span> <span class=\"p\">{</span>\n        <span class=\"s2\">&quot;ENGINE&quot;</span><span class=\"p\">:</span> <span class=\"s2\">&quot;django.contrib.gis.db.backends.postgis&quot;</span><span class=\"p\">,</span>\n        <span class=\"s2\">&quot;NAME&quot;</span><span class=\"p\">:</span> <span class=\"s2\">&quot;geodjango&quot;</span><span class=\"p\">,</span>\n        <span class=\"s2\">&quot;USER&quot;</span><span class=\"p\">:</span> <span class=\"s2\">&quot;geodjango&quot;</span><span class=\"p\">,</span>\n    <span class=\"p\">},</span>\n    <span class=\"s2\">&quot;other&quot;</span><span class=\"p\">:</span> <span class=\"p\">{</span>\n        <span class=\"s2\">&quot;ENGINE&quot;</span><span class=\"p\">:</span> <span class=\"s2\">&quot;django.contrib.gis.db.backends.postgis&quot;</span><span class=\"p\">,</span>\n        <span class=\"s2\">&quot;NAME&quot;</span><span class=\"p\">:</span> <span class=\"s2\">&quot;other&quot;</span><span class=\"p\">,</span>\n        <span class=\"s2\">&quot;USER&quot;</span><span class=\"p\">:</span> <span class=\"s2\">&quot;geodjango&quot;</span><span class=\"p\">,</span>\n    <span class=\"p\">},</span>\n<span class=\"p\">}</span>\n\n<span class=\"n\">SECRET_KEY</span> <span class=\"o\">=</span> <span class=\"s2\">&quot;django_tests_secret_key&quot;</span>\n</code></pre></div>\n<p>Om du antar att inställningarna ovan finns i filen ”postgis.py” i samma katalog som ”runtests.py”, kommer alla Django- och GeoDjango-tester att utföras när kommandot körs:</p>\n<div class=\"code-block\" data-language=\"shell\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Shell code\"><code>$<span class=\"w\"> </span>./runtests.py<span class=\"w\"> </span>--settings<span class=\"o\">=</span>postgis\n</code></pre></div>\n<p>Om du bara vill köra GeoDjango-testsviten anger du <code class=\"docutils literal notranslate\"><span class=\"pre\">gis_tests</span></code>:</p>\n<div class=\"code-block\" data-language=\"shell\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Shell code\"><code>$<span class=\"w\"> </span>./runtests.py<span class=\"w\"> </span>--settings<span class=\"o\">=</span>postgis<span class=\"w\"> </span>gis_tests\n</code></pre></div>\n</section>\n</section>","rootId":"testing-geodjango-apps","toc":[{"title":"PostGIS","anchor":"postgis","children":[{"title":"Inställningar","anchor":"settings","children":[{"title":"POSTGIS_VERSION","anchor":"postgis-version","children":[]}]},{"title":"Erhållande av tillräckliga privilegier","anchor":"obtaining-sufficient-privileges","children":[{"title":"Skapa databasanvändare","anchor":"create-database-user","children":[]},{"title":"Skapa superanvändare för databasen","anchor":"create-database-superuser","children":[]}]},{"title":"Fönster","anchor":"windows","children":[]}]},{"title":"GeoDjango-test","anchor":"geodjango-tests","children":[{"title":"Exempel","anchor":"example","children":[]}]}],"breadcrumbs":[{"docname":"ref/index","title":"API-referens","url":"/sv/5.2/ref/"},{"docname":"ref/contrib/index","title":"contrib paket","url":"/sv/5.2/ref/contrib/"},{"docname":"ref/contrib/gis/index","title":"GeoDjango","url":"/sv/5.2/ref/contrib/gis/"}],"prev":{"docname":"ref/contrib/gis/sitemaps","title":"Geografiska webbplatskartor","url":"/sv/5.2/ref/contrib/gis/sitemaps/"},"next":{"docname":"ref/contrib/gis/deployment","title":"Driftsättning av GeoDjango","url":"/sv/5.2/ref/contrib/gis/deployment/"},"formats":{"html":"/sv/5.2/ref/contrib/gis/testing/","markdown":"/sv/5.2/ref/contrib/gis/testing.md","json":"/sv/5.2/ref/contrib/gis/testing.json"},"source":"https://github.com/django/django/blob/stable/5.2.x/docs/ref/contrib/gis/testing.txt","official":"https://docs.djangoproject.com/sv/5.2/ref/contrib/gis/testing/","inVersions":["6.1","6.0","5.2"],"inLocales":["en","sv","zh-hans","ga","fr","ja","id","it","pt-br","ko","es","el","pl"]}