? 目錄 ?
- 🛫 導讀
- 需求
- 1?? 前期準備:創建管理員/普通測試用戶
- 1.1 創建普通用戶Test(無管理員權限)
- 1.2 創建管理員用戶Admin(含管理員權限)
- 2?? 核心操作:通過runas命令切換用戶命令行環境
- 2.1 runas命令基礎語法
- 2.2 切換至普通用戶Test的cmd環境
- 2.3 切換至管理員用戶Admin的cmd環境
- 3?? 測試執行:在不同用戶環境下測試記事本寫入文件
- 3.1 普通用戶Test環境
- 3.2 管理員用戶Admin環境
- 3.3 禁用測試賬號
- 🛬 文章小結
- 📖 參考資料
🛫 導讀
需求
在軟件測試場景中,需驗證程序(如Test.exe)在不同權限用戶環境下的運行兼容性(如管理員權限依賴、普通用戶權限限制),避免因權限差異導致功能異常。
本文針對Windows環境,提供“創建差異化權限用戶(管理員Admin、普通用戶Test)→ 通過runas命令切換用戶命令行環境 → 調用Test.exe執行測試”的完整流程,解決手動切換系統用戶的繁瑣問題,實現高效權限覆蓋測試。
1?? 前期準備:創建管理員/普通測試用戶
需先在Windows系統中創建兩個差異化權限的本地用戶(管理員用戶Admin、普通用戶Test),確保權限邊界清晰,測試結果可區分。
1.1 創建普通用戶Test(無管理員權限)
普通用戶用于模擬常規用戶場景,僅擁有基礎系統操作權限,步驟如下:
- 打開「控制面板」→ 進入「賬戶」→ 點擊「其他賬戶」→ 選擇「添加新用戶」;
- 在「本地用戶和組」下面,右鍵點擊「用戶」;
- 選擇「新用戶」,彈出創建用戶的對話框;
- 輸入用戶名
Test
,設置密碼(需符合Windows密碼復雜度要求,如包含大小寫+數字),完成創建;
(命令行快捷創建)若需快速操作,可通過管理員命令提示符執行:
# 創建普通用戶Test,密碼設為Test@123(實際使用需替換為復雜密碼) net user Test Test@123 /add # 確認用戶創建成功(查看用戶列表) net user
1.2 創建管理員用戶Admin(含管理員權限)
管理員用戶用于模擬高權限場景,需擁有系統級操作權限(如修改配置、訪問受限目錄),步驟如下:
- 重復1.1的前4步,創建用戶名為
Admin
的本地用戶;- 然后右鍵點擊
Admin
用戶 → 選擇「屬性」;- 按照下面步驟完成權限配置;
- 驗證權限:打開「命令提示符」,執行
net localgroup administrators
,若列表中包含Admin
,則權限配置成功。
(命令行快捷創建)通過管理員命令提示符執行:
# 創建用戶Admin,密碼設為Admin@123(實際使用需替換為復雜密碼) net user Admin Admin@123 /add # 將Admin添加到管理員組(賦予管理員權限) net localgroup administrators Admin /add # 驗證是否加入管理員組 net localgroup administrators | findstr "Admin"
2?? 核心操作:通過runas命令切換用戶命令行環境
runas
是Windows內置命令,可在當前系統會話中以指定用戶身份啟動程序(如cmd),無需注銷切換用戶。核心通過Win+R調用運行窗口執行命令,步驟如下。
2.1 runas命令基礎語法
切換用戶命令行環境的通用語法:
runas /user:用戶名 cmd
關鍵參數說明:
/user:用戶名
:指定目標用戶(本地用戶需加計算機名前綴,如當前計算機名為WIN10-TEST
,則完整用戶名為WIN10-TEST\Test
;若為域用戶,需加域前綴);cmd
:指定啟動的程序為命令提示符(即切換到目標用戶的cmd環境);
補充參數(可選):/savecred
:保存用戶憑證(僅首次輸入密碼,后續無需重復輸入,需管理員權限啟用);/noprofile
:不加載用戶配置文件(啟動速度更快,適合僅需基礎環境的場景)。
2.2 切換至普通用戶Test的cmd環境
模擬普通用戶權限執行測試,操作步驟:
- 按下
Win+R
組合鍵,打開「運行」窗口;- 輸入以下命令(需替換
[計算機名]
為實際Windows計算機名,可通過hostname
命令查詢):示例(計算機名為runas /user:[計算機名]\Test cmd
WIN10-TEST
):runas /user:WIN10-TEST\Test cmd
- 點擊「確定」后,會彈出新的命令提示符窗口,提示“輸入Test的密碼:”;
- 輸入創建Test用戶時設置的密碼(輸入時無明文顯示,輸完按回車即可);
- 驗證環境:若新cmd窗口標題顯示“Administrator: C:\Windows\system32\cmd.exe”(普通用戶默認不顯示管理員標識),且執行
whoami
命令輸出[計算機名]\test
,則切換成功。
2.3 切換至管理員用戶Admin的cmd環境
模擬管理員權限執行測試,操作步驟:
- 按下
Win+R
組合鍵,打開「運行」窗口;- 輸入以下命令(替換
[計算機名]
為實際計算機名):示例(計算機名為runas /user:[計算機名]\Admin cmd
WIN10-TEST
):runas /user:WIN10-TEST\Admin cmd
- 點擊「確定」后,彈出新的命令提示符窗口,輸入Admin用戶的密碼(輸完按回車);
- 驗證環境:執行
whoami
命令,輸出[計算機名]\admin
;執行net localgroup administrators | findstr "Admin"
,若有結果則確認管理員權限生效;新cmd窗口標題通常會顯示“Administrator: C:\Windows\system32\cmd.exe”(管理員標識)。
3?? 測試執行:在不同用戶環境下測試記事本寫入文件
切換至目標用戶的cmd環境后,需通過命令行調用Test.exe,觀察運行結果(如是否報錯、功能是否正常、日志是否符合預期),完成權限覆蓋測試。
3.1 普通用戶Test環境
驗證Test.exe在低權限環境下的兼容性,步驟:
- 按
Win+R
打開運行窗口,輸入runas /user:Test cmd
,然后點擊《確定》按鈕,打開命令行窗口:
- 命令行中輸入密碼Test@123,將打開新的命令行窗口:
- 在新的命令行窗口中輸入
notepad.exe
,回車運行記事本。- 隨便輸入內容123,點擊保存,選擇C盤根目錄,點擊保存,將提示
沒有權限
。
3.2 管理員用戶Admin環境
驗證在高權限環境下的運行結果,步驟跟Test環境一樣的,只是最后能正常保存!
3.3 禁用測試賬號
測試結束后,安全起見,我們禁用兩個使用中的賬號。
net user Admin /active:no
net user Test /active:no
后續如需繼續使用賬號,可以通過下面命令開啟
net user Admin /active:yes
net user Test /active:yes
🛬 文章小結
- 核心流程:通過“創建差異化權限用戶→runas切換cmd環境→調用Test.exe測試”,實現高效權限覆蓋測試,無需注銷切換系統用戶;
- 關鍵注意事項:
- 創建用戶時需明確權限邊界(普通用戶設為“標準用戶”,管理員用戶加入管理員組);
- runas命令需帶計算機名前綴(本地用戶),密碼輸入時無明文顯示,需確保輸入正確;
- 調用Test.exe時建議使用絕對路徑,避免因用戶環境不同導致的路徑解析差異;
- 測試重點:普通用戶環境關注“權限不足”場景,管理員環境關注“高權限功能穩定性”,兩者結果對比可發現權限設計問題;
- 效率優化:若需頻繁測試,可將runas命令保存為批處理文件(如
Test_User.cmd
、Admin_User.cmd
),雙擊即可快速切換環境。
📖 參考資料
- Microsoft 官方文檔:runas 命令用法
- 如何啟用和禁用Administrator賬戶,windows專業版和家庭版:https://zhuanlan.zhihu.com/p/668649208
ps: 文章中內容僅用于軟件測試、系統管理等合法技術場景,操作時需遵守企業IT管理規范,不得用于未經授權的系統訪問或權限濫用。