Dela via


Testa JavaScript-API:et

Ta ett test är en webbläsarbaserad UWP-app som renderar låsta onlineutvärderingar för testning med höga insatser, vilket gör att lärare kan fokusera på utvärderingsinnehållet i stället för att tillhandahålla en säker testmiljö. För att uppnå detta använder den ett JavaScript-API som alla webbprogram kan använda. Api:et Take-a-test stöder SBAC-webbläsarens API-standard för vanliga kärntester med höga insatser.

Mer information om själva appen finns i teknisk referens för appen Ta ett test . Felsökningshjälp finns i Felsöka Microsoft Gör ett test med loggboken.

Referensdokumentation

API:erna 'Take a Test' finns i följande namnområden. Observera att alla API:er är beroende av ett globalt SecureBrowser objekt.

Namespace Description
säkerhetsnamnområde Innehåller API:er som gör att du kan låsa enheten för testning och framtvinga en testmiljö.

Säkerhetsnamnområde

Med säkerhetsnamnområdet kan du låsa enheten, kontrollera listan över användar- och systemprocesser, hämta MAC- och IP-adresser och rensa cachelagrade webbresurser.

Metod Description
lockDown Låser enheten för testning.
isEnvironmentSecure Avgör om låsningskontexten fortfarande tillämpas på enheten.
getDeviceInfo Hämtar information om den plattform där testprogrammet körs.
examineProcessList Hämtar listan över användar- och systemprocesser som körs.
stänga Stänger webbläsaren och låser upp enheten.
getPermissiveMode Kontrollerar om tillåtande läge är på eller av.
setPermissiveMode Aktiverar eller inaktiverar tillåtande läge.
emptyClipBoard Rensar systemets urklipp.
getMACAddress Hämtar listan över MAC-adresser för enheten.
getStartTime Hämtar den tid då testappen startades.
getCapability Frågar om en funktion är aktiverad eller inaktiverad.
setCapability Aktiverar eller inaktiverar den angivna funktionen.
isRemoteSession Kontrollerar om den nuvarande sessionen är inloggad med fjärranslutning.
isVMSession Kontrollerar om den aktuella sessionen körs på en virtuell dator.

lockDown

Låser enheten. Används också för att låsa upp enheten. Testwebbprogrammet anropar det här anropet innan eleverna kan börja testa. Implementeraren måste vidta de åtgärder som krävs för att skydda testmiljön. De åtgärder som vidtas för att skydda miljön är enhetsspecifika och omfattar till exempel aspekter som att inaktivera skärmdumpar, inaktivera röstchatt i säkert läge, rensa systemets Urklipp, gå in i helskärmsläge, inaktivera Blanksteg i OSX 10,7+-enheter osv. Testprogrammet aktiverar låsning innan en utvärdering påbörjas och inaktiverar nedlåsningen när eleven har slutfört utvärderingen och är ute från det säkra testet.

Syntax
void SecureBrowser.security.lockDown(Boolean enable, Function onSuccess, Function onError);

Parameters

  • enable - sant att köra appen Take-a-Test ovanför låsskärmen och tillämpa principer som beskrivs i den tekniska referensen för Take-a-Test-appen. false slutar köra Take-a-Test ovanför låsskärmen och stänger den om inte appen inte är låst. i vilket fall det inte finns någon effekt.
  • onSuccess - [valfritt] Funktionen som ska anropas när låsningen har aktiverats eller avaktiverats framgångsrikt. Det måste vara av formatet Function(Boolean currentlockdownstate).
  • onError - [valfritt] Funktionen som ska anropas om låsningsåtgärden misslyckades. Det måste vara av formatet Function(Boolean currentlockdownstate).

Requirements
Windows 10 version 1709 eller senare


isEnvironmentSecure

Avgör om låsningskontexten fortfarande tillämpas på enheten. Testwebbprogrammet anropar detta innan eleverna kan börja testa och regelbundet när de är inne i testet.

Syntax
void SecureBrowser.security.isEnvironmentSecure(Function callback);

Parameters

  • callback – Den funktion som ska anropas när den här funktionen har slutförts. Det måste vara av formuläret Function(String state) där state är en JSON-sträng som innehåller två fält. Det första är fältet secure , som endast visar true om alla nödvändiga lås har aktiverats (eller funktioner inaktiverats) för att aktivera en säker testmiljö, och ingen av dessa har komprometterats sedan appen gick in i låsningsläget. Det andra fältet, messageKey, innehåller annan information eller information som är leverantörsspecifik. Avsikten här är att tillåta leverantörer att lägga till ytterligare information som utökar den booleska secure flaggan:
{
    'secure' : "true/false",
    'messageKey' : "some message"
}

Requirements
Windows 10, version 1709 eller senare


getDeviceInfo

Hämtar information om den plattform där testprogrammet körs. Detta används för att utöka all information som kunde urskiljas från användaragenten.

Syntax
void SecureBrowser.security.getDeviceInfo(Function callback);

Parameters

  • callback – Den funktion som ska anropas när den här funktionen har slutförts. Det måste vara av formuläret Function(String infoObj) där infoObj är en JSON-sträng som innehåller flera fält. Följande fält måste stödjas:
    • os representerar operativsystemtypen (till exempel Windows, macOS, Linux, iOS, Android osv.)
    • name representerar os-versionsnamnet, om det finns något (till exempel Sierra, Ubuntu).
    • version representerar os-versionen (till exempel: 10.1, 10 Pro osv.)
    • brand står för säker webbläsarprofilering (till exempel OAKS, CA, SmarterApp, med flera)
    • model representerar enhetsmodellen endast för mobila enheter. null/oanvänd för skrivbordswebbläsare.

Requirements
Windows 10, version 1709 eller senare


examineProcessList

Hämtar listan över alla processer som körs på klientdatorn som ägs av användaren. Testprogrammet anropar detta för att undersöka listan och jämföra den med en lista över processer som har bedömts neka-listade under testcykeln. Det här samtalet ska anropas både i början av en utvärdering och med jämna mellanrum medan eleven tar utvärderingen. Om en neka-listad process identifieras bör utvärderingen stoppas för att bevara testintegriteten.

Syntax
void SecureBrowser.security.examineProcessList(String[] denylistedProcessList, Function callback);

Parameters

  • denylistedProcessList – Listan över processer som testprogrammet har nekat.
    callback – Funktionen som ska anropas när de aktiva processerna har hittats. Det måste vara i formuläret: Function(String foundDenylistedProcesses) var foundDenylistedProcesses är i formuläret: "['process1.exe','process2.exe','processEtc.exe']". Den kommer att vara tom om inga nekad-listade processer har hittats. Om det är null indikerar detta att ett fel uppstod i det ursprungliga funktionsanropet.

Anmärkningar Listan innehåller inte systemprocesser.

Requirements
Windows 10, version 1709 eller senare


close

Stänger webbläsaren och låser upp enheten. Testprogrammet bör anropa detta när användaren väljer att avsluta webbläsaren.

Syntax
void SecureBrowser.security.close(restart);

Parameters

  • restart – Den här parametern ignoreras men måste anges.

Anmärkningar I Windows 10 version 1607 måste enheten låsas från början. I senare versioner stänger den här metoden webbläsaren oavsett om enheten är låst.

Requirements
Windows 10, version 1709 eller senare


getPermissiveMode

Testwebbprogrammet bör anropa detta för att avgöra om tillåtande läge är på eller av. I tillåtande läge förväntas en webbläsare koppla av några av sina stränga säkerhetskrokar så att assistiv teknik kan fungera med den säkra webbläsaren. Webbläsare som aggressivt hindrar andra program-UIs från att presenteras ovanpå dem kanske vill koppla av detta när de är i tillåtande läge.

Syntax
void SecureBrowser.security.getPermissiveMode(Function callback)

Parameters

  • callback – Den funktion som ska anropas när det här anropet slutförs. Det måste vara i formuläret: Function(Boolean permissiveMode) där permissiveMode anger om webbläsaren för närvarande är i tillåtande läge. Om det är odefinierat eller null uppstod ett fel i get-åtgärden.

Requirements
Windows 10, version 1709 eller senare


setPermissiveMode

Testwebbprogrammet bör anropa detta för att växla tillåtande läge på eller av. I tillåtande läge förväntas en webbläsare koppla av några av sina stränga säkerhetskrokar så att assistiv teknik kan fungera med den säkra webbläsaren. Webbläsare som aggressivt hindrar andra program-UIs från att presenteras ovanpå dem kanske vill koppla av detta när de är i tillåtande läge.

Syntax
void SecureBrowser.security.setPermissiveMode(Boolean enable, Function callback)

Parameters

  • enable – Det booleska värdet som anger den avsedda statusen för tillåtande läge.
  • callback – Den funktion som ska anropas när det här anropet slutförs. Det måste vara i formuläret: Function(Boolean permissiveMode) där permissiveMode anger om webbläsaren för närvarande är i tillåtande läge. Om det är odefinierat eller null uppstod ett fel i den angivna åtgärden.

Requirements
Windows 10, version 1709 eller senare


emptyClipBoard

Rensar systemets urklipp. Testprogrammet bör anropa detta för att rensa all data som kan lagras i systemets urklipp. Funktionen lockDown utför också den här åtgärden.

Syntax
void SecureBrowser.security.emptyClipBoard();

Requirements
Windows 10, version 1709 eller senare


getMACAddress

Hämtar listan över MAC-adresser för enheten. Testprogrammet bör anropa detta för att hjälpa till med diagnostik.

Syntax
void SecureBrowser.security.getMACAddress(Function callback);

Parameters

  • callback – Den funktion som ska anropas när det här anropet slutförs. Det måste vara i formuläret: Function(String addressArray) var addressArray är i formuläret: "['00:11:22:33:44:55','etc']".

Anmärkningar
Det är svårt att förlita sig på käll-IP-adresser för att skilja mellan slutanvändardatorer i testservrarna eftersom brandväggar/NATs/proxyservrar ofta används på skolorna. MED MAC-adresserna kan appen särskilja slutklientdatorer bakom en gemensam brandvägg i diagnostiksyfte.

Requirements
Windows 10, version 1709 eller senare


getStartTime

Hämtar den tid då testappen startades.

Syntax
DateTime SecureBrowser.security.getStartTime();

Återvända
Ett DateTime-objekt som anger den tid då testappen startades.

Requirements
Windows 10, version 1709 eller senare


getCapability

Frågar om en funktion är aktiverad eller inaktiverad.

Syntax
Object SecureBrowser.security.getCapability(String feature)

Parameters

feature – Strängen för att avgöra vilken funktion som ska frågas. Giltiga funktionssträngar är "screenMonitoring", "printing" och "textSuggestions" (skiftlägesokänsliga).

Returvärde
Den här funktionen returnerar antingen ett JavaScript-objekt eller en literal med formuläret : {<feature>:true|false}. sant om den efterfrågade funktionen är aktiverad, falskt om funktionen inte är aktiverad eller funktionssträngen är ogiltig.

Krav Windows 10, version 1703 eller senare


setCapability

Aktiverar eller inaktiverar en specifik funktion i webbläsaren.

Syntax
void SecureBrowser.security.setCapability(String feature, String value, Function onSuccess, Function onError)

Parameters

  • feature – Strängen för att avgöra vilken funktion som ska anges. Giltiga funktionssträngar är "screenMonitoring", "printing", och "textSuggestions" (skiftlägesokänsliga).
  • value – Den avsedda inställningen för funktionen. Det måste vara antingen "true" eller "false".
  • onSuccess - [valfritt] Funktionen som ska anropas när den angivna åtgärden har slutförts. Det måste vara i den formen Function(String jsonValue) där jsonValue är i formen: {<feature>:true|false|undefined}.
  • onError - [valfritt] Funktionen som ska anropas om den angivna åtgärden misslyckades. Det måste vara på den formen Function(String jsonValue) där jsonValue är i formatet: {<feature>:true|false|undefined}.

Anmärkningar
Om målfunktionen är okänd för webbläsaren skickar den här funktionen värdet undefined till återanropsfunktionen.

Krav Windows 10, version 1703 eller senare


isRemoteSession

Kontrollerar om den nuvarande sessionen är inloggad med fjärranslutning.

Syntax
Boolean SecureBrowser.security.isRemoteSession();

Returvärde
sant om den aktuella sessionen är fjärransluten, annars falskt.

Requirements
Windows 10 version 1709 eller senare


isVMSession

Kontrollerar om den aktuella sessionen körs på en virtuell dator.

Syntax
Boolean SecureBrowser.security.isVMSession();

Returvärde
sant om den aktuella sessionen körs på en virtuell dator, annars falskt.

Anmärkningar
Den här API-kontrollen kan bara identifiera virtuella datorsessioner som körs i vissa hypervisor-program som implementerar lämpliga API:er

Requirements
Windows 10 version 1709 eller senare