import http from 'k6/http'; import { check } from 'k6'; export let options = { vus: 16, // number of virtual users duration: '30s', // test duration }; export default function () { let environment = "http://localhost:5275"; let username = "admin"; let password = "admin"; // Step 1: login, disable redirect following let loginRes = http.post( environment + '/Home/Login', { Username: username, Password: password }, { redirects: 0 } ); // Step 2: extract the auth cookie manually const setCookieHeader = loginRes.headers['Set-Cookie']; // Use a regex to extract the cookie value const match = setCookieHeader.match(/\.AspNetCore\.Cookies=([^;]+)/); const authCookie = match ? match[1] : null; if (!authCookie) { throw new Error('Login failed: no auth cookie found'); } // Step 3: use it on a protected page const headers = { Cookie: `.AspNetCore.Cookies=${authCookie}` }; const res = http.get(environment + '/Home/Assets', { headers }); check(res, { 'authorized request succeeded': (r) => r.status === 200, }); }