{"id":4532,"date":"2026-07-01T07:00:00","date_gmt":"2026-06-30T22:00:00","guid":{"rendered":"https:\/\/litcoder.com\/?p=4532"},"modified":"2026-06-26T21:51:24","modified_gmt":"2026-06-26T12:51:24","slug":"rust%ec%99%80-python-unit-test%ec%9d%98-%ea%b3%b5%ec%a1%b4","status":"publish","type":"post","link":"https:\/\/litcoder.com\/?p=4532","title":{"rendered":"Rust\uc640 Python unit test\uc758 \uacf5\uc874"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/litcoder.com\/?p=4256\" data-type=\"link\" data-id=\"https:\/\/litcoder.com\/?p=4256\">\uc608\uc804 \uae00<\/a>\uc5d0\uc11c vscode\uc758 test explorer\uc5d0 Rust\uc758 unittest\uac00 \ubcf4\uc774\ub3c4\ub85d \uc124\uc815\ud558\ub294 \ubc29\ubc95\uc744 \ub2e4\ub8ec \uc801\uc774 \uc788\uc5c8\ub294\ub370, \uc5ec\uae30\uc5d0 Python test case (\uc5ec\uae30\uc11c\ub294 pytest)\ub3c4 \ud568\uaed8 \ud45c\uc2dc\ub418\ub3c4\ub85d \ud558\ub824\uba74 <code>.vscode\/settings.json<\/code>\uc744 \ud3b8\uc9d1\ud574 \uc8fc\uc5b4\uc57c \ud55c\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\ud574\ub2f9 \ud504\ub85c\uc81d\ud2b8\uc758 \uacbd\uc6b0 \uac00\uc0c1\ud658\uacbd\uc744 source root\uc5d0 \ub450\uc9c0 \uc54a\uace0 \uc11c\ube0c \ub514\ub809\ud1a0\ub9ac\uc778 <code>service\/.venv<\/code> \uc548\uc5d0 \ub123\uc5b4 \ub450\uc5c8\uae30 \ub54c\ubb38\uc5d0 <code>python.defaultInterpreterPath<\/code> \uac12\uc744 \uc774\uacf3\uc73c\ub85c \uc9c1\uc811 \uc124\uc815\ud574 \uc8fc\uace0 pytest \uc0ac\uc6a9\uc744 \uc704\ud55c \uc124\uc815\ub3c4 \ud574  \ub450\uc5c8\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"json\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">{\n    \/\/ Rust unit test\n    \"rust-analyzer.testExplorer\": true,\n\n    \/\/ Python virtual environment\uc6a9 \uc778\ud130\ud504\ub9ac\ud130 \uc124\uc815\n    \"python.defaultInterpreterPath\": \"${workspaceFolder}\/service\/.venv\/bin\/python\", \n    \n    \/\/ pytest \uc0ac\uc6a9\n    \"python.testing.pytestEnabled\": true,\n    \"python.testing.unittestEnabled\": false,\n\n    \/\/ Python unit test\uac00 \uc788\ub294 \ub514\ub809\ud1a0\ub9ac \uacbd\ub85c\n    \"python.testing.pytestArgs\": [\n        \"service\/test\"\n    ],\n    \"python-envs.defaultEnvManager\": \"ms-python.python:venv\"\n}<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uadf8\ub9ac\uace0 \ub098\uc11c vscode GUI\uc5d0\uc11c\ub3c4 \ub2e4\uc2dc \ud55c\ubc88 venv\ub97c \uc124\uc815\ud574 \uc900\ub2e4. \uadf8\ub0e5 \ud504\ub85c\uadf8\ub7a8\uc744 \uc7ac \uc2e4\ud589 \ud588\uc73c\uba74 \uc774 \ubd80\ubd84\uc740 \uac74\ub108 \ub6f0\uc5b4\ub3c4 \ub418\uc5c8\uc744 \uac83 \uac19\uae34 \ud55c\ub370, \uc624\ub958\uac00 \uacc4\uc18d \ub728\uae38\ub798 \uc218\ub3d9\uc73c\ub85c \uc124\uc815\ud574 \uc8fc\uc5c8\ub2e4.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"431\" height=\"19\" src=\"https:\/\/litcoder.com\/wp-content\/uploads\/2026\/06\/vscode_venv_python.png\" alt=\"\" class=\"wp-image-4536\" srcset=\"https:\/\/litcoder.com\/wp-content\/uploads\/2026\/06\/vscode_venv_python.png 431w, https:\/\/litcoder.com\/wp-content\/uploads\/2026\/06\/vscode_venv_python-300x13.png 300w\" sizes=\"auto, (max-width: 431px) 100vw, 431px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\uc774\ub807\uac8c \ud558\uace0 \ub098\uba74 test explorer\uc5d0 \ub450 \uc5b8\uc5b4\uc758 test case\ub4e4\uc774 \ubaa8\ub450 \ud45c\uc2dc\ub418\ub294 \ud3c9\ud654\ub85c\uc6b4 \uacf5\uc874\uc0c1\ud0dc\uac00 \ub41c\ub2e4.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"275\" height=\"560\" src=\"https:\/\/litcoder.com\/wp-content\/uploads\/2026\/06\/test_exp_rust_python.png\" alt=\"\" class=\"wp-image-4537\" srcset=\"https:\/\/litcoder.com\/wp-content\/uploads\/2026\/06\/test_exp_rust_python.png 275w, https:\/\/litcoder.com\/wp-content\/uploads\/2026\/06\/test_exp_rust_python-147x300.png 147w\" sizes=\"auto, (max-width: 275px) 100vw, 275px\" \/><\/figure>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>\uc608\uc804 \uae00\uc5d0\uc11c vscode\uc758 test explorer\uc5d0 Rust\uc758 unittest\uac00 \ubcf4\uc774\ub3c4\ub85d \uc124\uc815\ud558\ub294 \ubc29\ubc95\uc744 \ub2e4\ub8ec \uc801\uc774 \uc788\uc5c8\ub294\ub370, \uc5ec\uae30\uc5d0 Python test case (\uc5ec\uae30\uc11c\ub294 pytest)\ub3c4 \ud568\uaed8 \ud45c\uc2dc\ub418\ub3c4\ub85d \ud558\ub824\uba74 .vscode\/settings.json\uc744 \ud3b8\uc9d1\ud574 \uc8fc\uc5b4\uc57c \ud55c\ub2e4. \ud574\ub2f9 \ud504\ub85c\uc81d\ud2b8\uc758 \uacbd\uc6b0 \uac00\uc0c1\ud658\uacbd\uc744 source root\uc5d0 \ub450\uc9c0 \uc54a\uace0 \uc11c\ube0c \ub514\ub809\ud1a0\ub9ac\uc778 service\/.venv \uc548\uc5d0 \ub123\uc5b4 \ub450\uc5c8\uae30 \ub54c\ubb38\uc5d0 python.defaultInterpreterPath \uac12\uc744 \uc774\uacf3\uc73c\ub85c \uc9c1\uc811 \uc124\uc815\ud574 \uc8fc\uace0 pytest \uc0ac\uc6a9\uc744 \uc704\ud55c \uc124\uc815\ub3c4 \ud574 \ub450\uc5c8\ub2e4. \uadf8\ub9ac\uace0 \ub098\uc11c [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[6],"tags":[452,105,423,293,279],"class_list":["post-4532","post","type-post","status-publish","format-standard","hentry","category-tools","tag-configuration","tag-python","tag-rust","tag-unittest","tag-vscode"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/litcoder.com\/index.php?rest_route=\/wp\/v2\/posts\/4532","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/litcoder.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/litcoder.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/litcoder.com\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/litcoder.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4532"}],"version-history":[{"count":8,"href":"https:\/\/litcoder.com\/index.php?rest_route=\/wp\/v2\/posts\/4532\/revisions"}],"predecessor-version":[{"id":4567,"href":"https:\/\/litcoder.com\/index.php?rest_route=\/wp\/v2\/posts\/4532\/revisions\/4567"}],"wp:attachment":[{"href":"https:\/\/litcoder.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4532"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/litcoder.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4532"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/litcoder.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4532"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}