From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7205110283261444096 X-Received: by 2002:a50:8754:0:b0:4ad:7c43:13c with SMTP id 20-20020a508754000000b004ad7c43013cmr1458836edv.2.1677579400645; Tue, 28 Feb 2023 02:16:40 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a17:907:72c9:b0:8b1:471c:8ca3 with SMTP id du9-20020a17090772c900b008b1471c8ca3ls7676034ejc.4.-pod-prod-gmail; Tue, 28 Feb 2023 02:16:39 -0800 (PST) X-Google-Smtp-Source: AK7set9muSPz7CRs/QOIDRYrd4+Cyd1owHDVjHF30wCCxtRKn2w7/SGWYW9F8/dLNEYGj/k3t0J9 X-Received: by 2002:a17:906:a46:b0:88a:7037:855e with SMTP id x6-20020a1709060a4600b0088a7037855emr2270840ejf.9.1677579399084; Tue, 28 Feb 2023 02:16:39 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1677579399; cv=pass; d=google.com; s=arc-20160816; b=MCMHwYjMWGbA2ro3LU5gWWiHVgPwAWB0o5BNmPFCFQK75sETGC6410dg14WAwpav4F oNSf5RxNV1aXw6OBOWkI2eJrF0iXfdYw1ATxyIKWUyOUQb3PBojjO33WaRJ4vlRkvQb3 FO4Gy97MHtgSMZfB6rhnVDl7DUpj/smYI05IE1jbmEC5MauGkUL6XqrBe1D+oq2G9kSB e0gEZRNgcq8YMnzvo5zP3QxP3A6ft20DSXKwjtwZl/n5X3zAeSx0is7EgHijq7ifOyce 09nNEwdJXgfJ5wHLIyzFzXp01TfhVmm9hO/B2duIb+wPJngWJr7IKxYSxV57Hg1DQeIn q6ZA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=mime-version:content-transfer-encoding:references:in-reply-to :message-id:subject:cc:to:from:date:dkim-signature; bh=Tc19sxnKDmtpc4HQJ1Oc0+isR4UjjUo5hNsFOMPY8zo=; b=OSM4lqAc9Lb+6/2ZM2PkmTqephqke7Gks3aAkuk0s6RI8vFvPGUJBNE98lrcN1+Nce g+fQOyKLo5B79rlFiE0oIYXzoUWGYV9aABY2hIY98FtovEl/W0BfAIZsFiFrf0ZEONGF KXgxI3cVBw3STI2/YKxVhwFTDkDOi/gj/WFV/GLpzoluFilkp6YX7HAaSOF2Vyc/WOU7 703sX2Gii/cEkJNoz0m5Q/2dC4pBy5AsYMvke68TSyG+JZIOOA0F0j7lQTD3AbWGWnrX SRng7cb+l+GGKFxM2ne1tb6sj3XJbVI1EzVXs6pgFYDjy+4MFPqkIfg6uhevpJvpi1aM xkqA== ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=L+UUhb00; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of henning.schild@siemens.com designates 2a01:111:f400:fe0d::611 as permitted sender) smtp.mailfrom=henning.schild@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Return-Path: Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on0611.outbound.protection.outlook.com. [2a01:111:f400:fe0d::611]) by gmr-mx.google.com with ESMTPS id lc10-20020a170906f90a00b008b14694acaesi467974ejb.2.2023.02.28.02.16.38 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 28 Feb 2023 02:16:39 -0800 (PST) Received-SPF: pass (google.com: domain of henning.schild@siemens.com designates 2a01:111:f400:fe0d::611 as permitted sender) client-ip=2a01:111:f400:fe0d::611; Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=L+UUhb00; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of henning.schild@siemens.com designates 2a01:111:f400:fe0d::611 as permitted sender) smtp.mailfrom=henning.schild@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iSBm+ANHwwz6Qd7Gs2uolgHneSTE0a7TfWNBZJm+lLr+Jzi0aGVinTsC8Kblcu2/sMcvUpxKO/T0I9Z/jUnbtFjR1btvIkTo2er1SQtjVeVs3CslIkAbzD3mDcO84q4ycuhfFGEGgiaTrlW95E1zpwLf2qGqUEt2nv4SAGfz+rShS05MfWDCPCO77tjZLl89BWZHAuQ7RZfd5Jo+KfRkJsRNnYZvZo+/1Th5yiDU1LOgLl7U6E6iSDz+BEzZXqy1Jg9TaWdaIj5tXyYVcEdTdM9j6y1Dqqi7/Du/FywxJ6EICLdhBeFtSllTUmRWRCezPAeO3rqPxkvlhhyZVUCUSg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Tc19sxnKDmtpc4HQJ1Oc0+isR4UjjUo5hNsFOMPY8zo=; b=mq47ubADq8d8yjIZmJ9/Q6+ZmzFnZu8zaPAAOJ5rasEj7VsJwGekyHN7/tpNUNTeYAlDn5z3MTXqbA5hM9pmF31zpQuE66PwEcVKh4ZoiIj0o9UkD25+pKpWBKuFhpuc1WxrJNJ7FSq+LJP+QoXvvxQm41qjsRWfooQ/vhjPijbD2nkPhLq8g72IqIiO3rq1FFiIlL7HC9xWlJxqgm53IbSPX5ojQSSwDRqYWlc7cea2elI/AXIiHYRdl7nTzKYeQOzBNOnmZ/6Jd9wJlmyepVbRYcMHfo+D5AXzMqOxeiLCO0qp4jr5/w7gEjBGy4Srnm3SEDOtTbjV00sU2ga/Dw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=siemens.com; dmarc=pass action=none header.from=siemens.com; dkim=pass header.d=siemens.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=siemens.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Tc19sxnKDmtpc4HQJ1Oc0+isR4UjjUo5hNsFOMPY8zo=; b=L+UUhb004ZMoNlAFd1p5QVIOcIrBIEjCvdFjK1Quz05m5LKldQgoTdSFueKVgsI3TK1yITInAJvsoUkPQLzu1eD9kBAML+NlAekAbdya6l2tTkdHImOc683NJAnX5Qjqo9h1fX6bLMnKMPnrEjHdk9ZOUsmST/QJsnEQcto0hUCdJrHzbsOE9o9ca7Ae4AlIqCwh6ylhE5eZwAmtcbhmZ829mMMKbyrUyhAaupj9kO8Oexc4nsZIrxKG0NuykWOrTWb07wD3XJ44gi3Gk+U8R8M9tPcs59rHmL4PUVXvUFORsBHX3TvsNdS6b8IQD6WMJcrD0snEX70HJtsU3uWRLA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=siemens.com; Received: from PA4PR10MB5780.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:102:269::8) by GV2PR10MB6432.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:150:b0::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6134.30; Tue, 28 Feb 2023 10:16:37 +0000 Received: from PA4PR10MB5780.EURPRD10.PROD.OUTLOOK.COM ([fe80::ee44:171b:4c40:d42c]) by PA4PR10MB5780.EURPRD10.PROD.OUTLOOK.COM ([fe80::ee44:171b:4c40:d42c%5]) with mapi id 15.20.6134.025; Tue, 28 Feb 2023 10:16:36 +0000 Date: Tue, 28 Feb 2023 11:16:34 +0100 From: Henning Schild To: Uladzimir Bely Cc: isar-users@googlegroups.com Subject: Re: [PATCH 3/3] testsuite: Document custom testcase for downstreams Message-ID: <20230228111634.6395b0ff@md1za8fc.ad001.siemens.net> In-Reply-To: <20230228074738.16304-4-ubely@ilbers.de> References: <20230228074738.16304-1-ubely@ilbers.de> <20230228074738.16304-4-ubely@ilbers.de> X-Mailer: Claws Mail 4.1.1 (GTK 3.24.35; x86_64-pc-linux-gnu) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR2P281CA0169.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:99::10) To PA4PR10MB5780.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:102:269::8) Return-Path: henning.schild@siemens.com MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PA4PR10MB5780:EE_|GV2PR10MB6432:EE_ X-MS-Office365-Filtering-Correlation-Id: 5339f3a6-923d-490c-49ab-08db1974dfc4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: tLYkya9UsYAvnspOEMAl8j5L4NlMBPJ3i5mk2dFQK2d9MmDzB2VYexXockg49qYQx10WIVaBFZjbKA/Udxy48O0dNcRM/Gm9MqqsivukdOyMK/7TRP0lRX0aZVWOX7Y7eJYRJ5ezEUjeV0VpJe0KnbRCq/Hman/zirZflS9lmDko6luOf4z2GRXCDY2uufipIpeD86oM80oYmuY9rdZsxKQUdfZKY9yr7i2UKxMGam6E3d1ODu+v6nRNGo1Kva6dcTKPWzhycEIHRwIiqe85Qu26ibHJGCK4lZ3ONPJHNY4pPUJ1niPbwnX/+vcHm7Q115myUACEmKiZZd74Nx/iJhrFYRB48bJoPfyUa5V/CLVLLo9M59AY2BrEYG3/aFIwl38p/H2mClANQx3rwH/NQhkKIDKouezPv1HrWGihZoKRmKHPR6l42beIAN5cw2757Lrsi4LEa/81w71dyvhQwN5K8O6pd5MBqKylVaelUpb/FVnwBnOlT+XX+eZ0s1eDSF4LT0EOjDxzAgqgRV+HFLpLrQsAHjEJaIBPv6C9tm9/q4Q/FpRxisXMhXtyT5oWqSHNBHtqICIRaZ9hXT7Orznr5L/TUyuRMkAp5BqAIan2kGsMBAS+iX0AITvQLtOC X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PA4PR10MB5780.EURPRD10.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230025)(4636009)(39860400002)(366004)(376002)(396003)(346002)(136003)(451199018)(2906002)(86362001)(41300700001)(8936002)(66556008)(8676002)(6916009)(5660300002)(44832011)(66476007)(66946007)(82960400001)(4326008)(38100700002)(6486002)(478600001)(316002)(83380400001)(9686003)(186003)(26005)(1076003)(6512007)(6506007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Q01zL254V3I2aDhsT2lFWDZTNWx3Zi9vbkFscWpiQk9pYUNYRzNpN0xrY0Nj?= =?utf-8?B?SkxQamJ5aU05Ujd0Z0lKOEozUGtqTDRSeE0wV3o1dzZoQzBFMFRjcUovUlQw?= =?utf-8?B?dnY0ajM1VDE2TVNKcURWUHRLdGpqWWExc21sMTZVOWUwbUdPTFIyd0s1MjBL?= =?utf-8?B?MUxMUm5uaytBOTdOV2R2WUQ3d1NhTUh4dThaSU5sanJBNjVZK21qbVBURnpr?= =?utf-8?B?REZWZjVKN2Ria0pBdjBtZTVwYThtM1dnOVYwY3Ayck9EVG5PV2J0UDBFeXZO?= =?utf-8?B?SG5UZ2Z4b3FCYko4cHEySUdVRjlWMURmbEVvb0Z3emdKMWY2c2lGSytnL1l2?= =?utf-8?B?bUh2MTl0ejdkQTVHK0VtdmZDSStPY1Q4QnRlbnFUYWNnK1RwN1ZsRHhrZmhE?= =?utf-8?B?dWRGakdYYy9HSUoySmRrazl3a2sxVEZsRjVBdVd4R2tQMExlbXQ0L0ZWTlpv?= =?utf-8?B?WEtkemhjTStnd0Yrd1M3aHdXMmhCbk1zOXVwcEdYenQwUFJIRE5jUDhvamND?= =?utf-8?B?Z3U1NHBTNXR5c005ZVVuM0IvcVNoajlyTFJXeE1xWTh0S2t1eGF4TDZLY2NK?= =?utf-8?B?bFB2QWZQa3RXdDk0U3AzM0lrUkNySjI0eDRpYmJ4RHFJMkhSamdRb3c5NEpI?= =?utf-8?B?ZXR0T0dnYlZFdld4UEs5OG0rdzNjQkMwQmRFd242b2ZLcnhSbHdvY3Jpc3pn?= =?utf-8?B?L2gyZi9OczZHaUVScW1SZngrQ0oxOXQvcHJTenpLZmU5ZDVkQzJTaGR4T2R0?= =?utf-8?B?Ly94cjhvaE0vOENudnArSGxTN1VvRUxPQlBkZHNlWW5aeVlITytIZjJrUnNr?= =?utf-8?B?d05Jbk9nRUxockk5UEt5MlQ5b3BFQVNBZXRYUmpqQ29CWkhWTzNqUTd1TTBI?= =?utf-8?B?ZElmZnNsTW1zZS9Cdjd3NS84dXJCZXZmeEcwUFFvWm4zZmFYZlk2NnYzSFdW?= =?utf-8?B?Q3YrcXZ1YjFnc3lJMjQ5UlhYNVpJVFJJWWM0M3dMMHNzMkFTeU92ZkxkcGdS?= =?utf-8?B?Rk90TXVZdVVqNXd6TjBTalJqNVFHNXM1KzNDdFZNa1lGYXV0SnZwSHNmemh4?= =?utf-8?B?U2lOZ2ZYN2c1MkhKZEFEWDZsQ2l2bGp1ejUwZzF2QVV6cHIvdFVPQTBQbFhE?= =?utf-8?B?NUlRT2VjcVB1bUd5SDNLVndwVmo5OXVOQnE2cGJ4RXVhazNISXQ5V25pSUlR?= =?utf-8?B?Y3ZtWkh0SURNUC9iK3F5RElyNG1rNXBVN2ZXOFpxYUdzU0JSRkdrUUk4SU9U?= =?utf-8?B?bHZRamFJS0hUZW1hL0hKTTdJc0pQQTErRmJrV3p3T0lHVzRhYWVlUWs3V0NH?= =?utf-8?B?WmF6dTdwQ2FOSDdVRi9zRXFnWTY4bWhlZjk2SDdUcGtRWGs0RXQ4MmVWdjA2?= =?utf-8?B?Tk5OWS9MNjRueFNPVVZRbGJaN0s5OTVyQkZPUFlTWXFGMGVCVy9ISUQ0VHNq?= =?utf-8?B?Q0cyYW5QQVpCR1N4dmo3cE53K2VFMEhTSGFuSjA5L3pqbUFScHp1clNVby8v?= =?utf-8?B?YmVYOGtqdHhDZzI3R0owWnBxTlUxU1lVejRKRUl6Uk9oMXlwOEFrQVk3bkZJ?= =?utf-8?B?Qm9pMDZUQldkQTFOdHI5bjg2bnROaWFqTFNaelFsaiticTBnWCtnSVdjeEVh?= =?utf-8?B?VU1NVUl1aGN1VUttbVphUUZvaDZWMXNDclZxNVprRkI0MXAvYWRZS3J0ejRk?= =?utf-8?B?NHZpNUlxU0hmL1lIOENTZ0hFUDVyZzFSVkNtaE9lNGw5b2pNdjJkV0NKYnVR?= =?utf-8?B?STR5YnY1MXoxek5qdGowSUFER3lDNElwaFJ6Mk1FTjUySlVzdTFnSW1pTUdP?= =?utf-8?B?QlptdDJqcUpKMWFTemloQVJYeGZJUVJVYXErZjEybWpKbUF3Y0lIeVoyQXBW?= =?utf-8?B?M1hqYUNYZHkwVVFITHJsSDJIVWRRNkFpbjcyUVNzcGs2RkZFaDZDSUk4OUdT?= =?utf-8?B?MkFldm1zMnhKS2liczRnMlk3ZDhhU0srQ0dGcFhCcEFLOGpWeWd2TC9CTnJo?= =?utf-8?B?dUordy93WS90UmZIK25qRG1QVmRWNVc3bjZ6YTFTYWZwWElObW8zNUtzUEg2?= =?utf-8?B?SkVscGhFcWdWbkV1OUtlTEJrN3NqU2dFZmY3dklJNFdLYjQ1OWpBeS9YRk1Y?= =?utf-8?B?blRiWWYzM21YTGlweFVKSmdQKzBTRFdGbHhMOWhjUHdSWjJ4bUhwWjdmRldn?= =?utf-8?B?TFE9PQ==?= X-OriginatorOrg: siemens.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5339f3a6-923d-490c-49ab-08db1974dfc4 X-MS-Exchange-CrossTenant-AuthSource: PA4PR10MB5780.EURPRD10.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Feb 2023 10:16:36.5078 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 38ae3bcd-9579-4fd4-adda-b42e1495d55a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: nCVq8zxnabxKxu1S4bMnGbl1m3nKO6xqeQN0Bde4mP1TMGBVS4t+jSx92WuEZ+ggt2tpBBEQqmvTMpJHnu3c9URylwk1IAPlWFHQYXRzWx4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR10MB6432 X-TUID: xN6SEu8J43ES Would it maybe make sense to put some tests into meta-isar and actually demo that layering, where some layer-local tests live in the layer. Eventually we can maybe split up the whole testsuite into "isar" and "meta-isar" so "core" and "layer". Henning Am Tue, 28 Feb 2023 08:47:38 +0100 schrieb Uladzimir Bely : > Provide a complete example of testsuite implementation on the > downstream side in their own testcase directory. >=20 > Mention `PYTHONPATH` that needs to be adjusted. >=20 > Signed-off-by: Uladzimir Bely > --- > testsuite/README.md | 101 > ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 101 > insertions(+) >=20 > diff --git a/testsuite/README.md b/testsuite/README.md > index 476b8607..28036bcb 100644 > --- a/testsuite/README.md > +++ b/testsuite/README.md > @@ -122,3 +122,104 @@ And to execute this example: > $ avocado run sample.py:SampleTest.test_sample > ``` > =20 > +## Using a different directory for custom testcases > + > +Downstreams may want to keep their testcases in a different directory > +(e.g. `./test/sample.py` as top-level with test description) but > reuse +classes implemented in Isar testsuite (e.g. > `./isar/testsuite/*.py`). This is +a common case for downstream that > use `kas` to handle layers they use. + > +In this case it's important to adjust `PYTHONPATH` variable before > running +avocado so that isar testsuite files could be found: > + > +``` > +# TESTSUITEDIR=3D"/work/isar/testsuite" > +export PYTHONPATH=3D${PYTHONPATH}:${TESTSUITEDIR} > +``` > + > +# Example of the downstream testcase > + > +Let's assume the downstream builds `custom_image_name` image for > `qemuarm64` +target in order to running custom tests using qemu. > + > +Let's assume the [kas](https://github.com/siemens/kas) is used by > +the downstream with the following directory structure: > + > +``` > +... > +=E2=94=9C=E2=94=80=E2=94=80 build/ > +=E2=94=9C=E2=94=80=E2=94=80 isar/ > +=E2=94=9C=E2=94=80=E2=94=80 kas > +=E2=94=82 =E2=94=9C=E2=94=80=E2=94=80 qemuarm64.yml > +=E2=94=82 =E2=94=94=E2=94=80=E2=94=80 kas-container > +=E2=94=9C=E2=94=80=E2=94=80 meta-custom-layer > +=E2=94=94=E2=94=80=E2=94=80 test > + =E2=94=9C=E2=94=80=E2=94=80 run_test.sh > + =E2=94=9C=E2=94=80=E2=94=80 scripts > + =E2=94=82 =E2=94=94=E2=94=80=E2=94=80 sample_script.sh > + =E2=94=94=E2=94=80=E2=94=80 sample.py > +``` > + > +### test/sample.py: > + > +``` > +#!/usr/bin/env python3 > + > +from cibase import CIBaseTest > + > +class SampleTest(CIBaseTest): > + def test_sample_script(self): > + self.init("/build") > + self.vm_start('arm64','bullseye', image=3D'custom_image_name', > \ > + script=3D'sample_script.sh') > +``` > + > +### test/run_test.sh: > + > +``` > +#!/usr/bin/env bash > + > +# Make Isar testsuite accessable > +export PYTHONPATH=3D${PYTHONPATH}:${TESTSUITEDIR} > + > +# install avocado in virtualenv in case it is not there already > +if ! command -v avocado > /dev/null; then > + sudo apt-get -y update > + sudo apt-get -y install virtualenv > + rm -rf /tmp/avocado_venv > + virtualenv --python python3 /tmp/avocado_venv > + source /tmp/avocado_venv/bin/activate > + pip install avocado-framework=3D=3D100.1 > +fi > + > +# Install qemu > +if ! command -v qemu-system-aarch64 > /dev/null; then > + sudo apt-get -y update > + sudo apt-get -y install --no-install-recommends > qemu-system-aarch64 ipxe-qemu +fi > + > +# Start tests in this dir > +BASE_DIR=3D"/build/avocado" > + > +# Provide working path > +mkdir -p .config/avocado > +cat < .config/avocado/avocado.conf > +[datadir.paths] > +base_dir =3D ${BASE_DIR}/ > +data_dir =3D ${BASE_DIR}/data > +logs_dir =3D ${BASE_DIR}/logs > +test_dir =3D ${BASE_DIR}/test > +EOF > +export VIRTUAL_ENV=3D"./" > + > +tsd=3D$(dirname $(realpath $0))/scripts > + > +# Run SSH tests > +avocado run --max-parallel-tasks=3D1 /work/test/test.py -p > test_script_dir=3D${tsd} +``` > + > +Running testcase using `kas shell` may be done as: > + > +``` > +./kas/kas-container shell kas/qemuarm64.yml -c > '/work/test/run_test.sh' +```