• Slika 43: Novi prototip se prikaže v meniju Question type
  • python3_cosc121
  • Slika 42: Razdelek Advanced customisation




    Download 10,53 Mb.
    bet38/106
    Sana06.07.2020
    Hajmi10,53 Mb.
    #11122
    1   ...   34   35   36   37   38   39   40   41   ...   106
    Slika 42: Razdelek Advanced customisation
    V okvirčku Is prototype? izberemo možnost Yes (user defined). V polje Question type napišemo ime našega prototipa, na primer python3_vnesi_podatke.
    Nastavitve peskovnika (Sandbox) pustimo privzete (okenca pustimo prazna). Če želimo, lahko omejimo čas izvajanja enega testnega primera, izraženega v sekundah (okence TimeLimit). Prav tako lahko omejimo porabo strežnikovega delovnega spomina, izraženega v MB (okence MemLimit). V okence Parameters vpišemo dodatne možnosti za peskovnik (na primer dodatne nastavitve pri prevajanju programa, API-ključ...).
    V okvirček Sandbox language vnesemo programski jezik, v katerem se naloga sestavlja. Vpisali bomo python3. Okence Ace language pustimo prazno. Po privzetih nastavitvah se bo upošteval enak programski jezik, kot ga uporablja peskovnik, torej Python3.
    Ker bomo ta tip vprašanja uporabljali samo za naloge tipa 'napiši program', bomo možnost Enable combinator odkljukali. V tem prototipu se bo torej uporabljala samo predloga per_test.

    Ko bomo sestavljeno nalogo shranili, se samodejno shrani tudi prototip. Ko bomo sestavljali naslednjo nalogo, bo naš novi prototip na voljo v meniju Question type (Slika 43).



    Slika 43: Novi prototip se prikaže v meniju Question type
    Med tipi vprašanj že imamo prototip z enako prilagojeno predlogo, kot jo ima python3_vnesi_podatke. To je prototip python3_w_input, ki ima prilagojeno tudi kombinirano predlogo. Namen ustvarjanja našega prototipa je bil zgolj ta, da smo pokazali možnost ustvarjanja lastnega prototipa in njegovo kasnejšo uporabo pri sestavljanju vprašanj.
    Na univerzi Canterbury na Novi Zelandiji so ustvarili svoj prototip python3_cosc121, ki ga uporabljajo za ocenjevanje kvizov in izpitov. Ta prototip preveri, če je koda napisana v skladu s Pylint sistemom, preden se le-ta izvrši.
    Pylint je sistem za statično preverjanje kode. To pomeni, da lahko analizira kodo, preden se ta izvrši. Pylint poišče možne napake v kodi, poskuša uveljaviti standard kodiranja in slog kodiranja. Za slog kodiranja uporablja slogovni priročnik PEP 8.
    Poleg preverjanja s Pylint sistemom ima prototip python3_cosc121 vgrajene še številne druge uporabne parametre, kot so:


    • Je funkcija (isfunction): Ta parameter poskrbi, da je koda definirana kot funkcija. Če bomo sestavljali vprašanje tipa 'napiši program', moramo ta parameter nastaviti na False

    • Pylint nastavitve (pylintoptions): dodatne nastavitve pri preverjanju s sistemom Pylint. Primer: ukaz {"pylintoptions":["--max-statements=20", "--max-args=3"]} bo vsako definirano funkcijo v kodi omejil z uporabo največ 20 ukazov ("--max-statements=20") in s 3 argumenti ("--max-args=3")

    • Prepovedani konstruktorji (proscribedconstructs): določi, katere konstruktorje je prepovedano uporabiti v kodi

    • Obvezni konstruktorji (requiredconstructs): določi, katere konstruktorje je treba uporabiti v kodi

    • Dovoli globalne spremenljivke (allowglobals): dovoli uporabo globalnih spremenljivk

    • Maksimalno število konstant (maxnumconstants): parameter določi maksimalno število konstant, ki jih smemo uporabljati v kodi

    • Brez zagona (norun): študentova koda se ne izvrši, izvršila se bo samo testna koda, ki smo jo podali

    • Zaženi dodatno (runextra): s tem ukazom dobimo v predlogi dodatno polje

    {{ TEST.extra | e('py') }}, za dodatno testiranje kode (glej razlago v poglavju 5.1)
    V poglavju 6 bomo pri sestavljanju nalog uporabili tudi ta prototip. Pokazali bomo, kako lahko uporabljamo določene parametre, opisane zgoraj.


    Download 10,53 Mb.
    1   ...   34   35   36   37   38   39   40   41   ...   106




    Download 10,53 Mb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Slika 42: Razdelek Advanced customisation

    Download 10,53 Mb.