0% found this document useful (0 votes)
40 views5 pages

upGrad Coding Console Overview

There are two types of coding assessments on the upGrad platform: 1) In-module questions and 2) Timed assessments with multiple questions. All coding questions provide sample test cases for learners to validate their code logic, and hidden non-sample test cases that determine the final evaluation. The Run option checks for errors, Verify checks sample test cases, and Submit validates against all test cases to determine if the code is fully accepted or rejected. Evaluation is done character-by-character against the expected output from both sample and non-sample test cases.

Uploaded by

Adit Paliwal
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
40 views5 pages

upGrad Coding Console Overview

There are two types of coding assessments on the upGrad platform: 1) In-module questions and 2) Timed assessments with multiple questions. All coding questions provide sample test cases for learners to validate their code logic, and hidden non-sample test cases that determine the final evaluation. The Run option checks for errors, Verify checks sample test cases, and Submit validates against all test cases to determine if the code is fully accepted or rejected. Evaluation is done character-by-character against the expected output from both sample and non-sample test cases.

Uploaded by

Adit Paliwal
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

upGrad Coding Console Walkthrough

Types of coding assessments 


 
There are two types of coding assessments on the upGrad learning platform: 
1) In-module coding questions 
2) Timed assessments comprising multiple coding questions 
 
Common to All Coding Questions 
 
Test Cases 
 
1. Sample  test  cases  (non-hidden  test  cases):  ​These  test  cases  are  visible  to  learners 
once  they  verify  with  the  code.  The  logic  of  the  program  is  tested  against  these  test 
cases.  Depending  on  whether  these  test  cases  pass  or  not,  learners  can  make changes 
to their code to get the desired output.  
2. Non-sample  test  cases  (hidden  test cases): These test cases are not visible to learners. 
Each  coding  question  will  generally  have  at  least  one  non-sample  test  case  and  for  any 
graded  question,  the  final  score  in  the  question  in  only  evaluated  basis  ​the  number  of 
non-sample  test cases passed​. Sample test cases have no contribution to the final score. 
They  are  present  just  to  check  the  sanity  of  your  code.  Non-sample  test  cases  are 
generally  not  visible  to  learners  to  restrict  students  from  getting  the  expected  output 
through hard-coding.  
 
Note:  In  cases  where  coding  questions  are  evaluative  in  nature,  marks  are  awarded  only  on 
successful execution and acceptance of non-sample test cases.  
 
1. In-module coding questions 
 
For  all  coding  questions,  three  features  are  available  on  the do-select platform to help students 
write  and  test  their  code  (both  the  syntax  and  the  logic  of  the  program).  These  three  features 
are: 
a) Run 
b) Verify 
c) Submit 
 
 
Run  
 
The  run  option  checks  for  any  syntactical,  runtime,  or  execution  error  present  in  the  written 
code.  You  can  learn  about  the  different  types  of  errors  ​here​.  If  the  code  runs  successfully 
without  throwing  any  of  the  aforementioned  errors,  the  console  prints  a  message  “Code 
Execution Successful!” as shown in the screenshot below.  
 
Please  note  that  Run  option  does  not  check  for  the  program  logic  or  output  against  the  test 
cases  (neither  sample  nor  non-sample),  and  hence,  its  successful  execution is nowhere related 
to the evaluation of the code.  
 

  
 
Verify  
 
The  verify  option  checks  the  code  against  the  sample  test  cases  available  on  the  coding 
console.  It  also  prints  the  input  along  with  the  expected  output  and  the  output  as  produced  by 
the learner’s code.  
 
If  all  the  test  cases  pass  successfully,  a  screen  prompting  “All  sample  test  cases  passed!”  will 
appear (something similar to the screenshot shown below):  
 

 
 
However,  in  case  the  output  is  not  as  expected,  the  system  prints  “No  sample  test  cases 
passed” along with the details (as shown in the screenshot below): 
 

 
 
Please  note  that  the  Verify  option  only  validates  the  code  against  the  sample  test  cases,  and 
hence, it does not directly imply that the code will finally be accepted when submitted.  
 
Submit  
 
  The  Submit  option  validates  the  code  against  both  sample  and  non-sample  test  cases.  If  both 
sample  and  non-sample  test  cases  yield  the  expected  output,  i.e.,  if  the  test  cases  pass 
successfully,  the  code  is  accepted.  Else,  the  code  will  be  in  the  rejected  state.  The  screenshot 
below is a sample of a code in the rejected state: 
 
 
 
 
 
When  you  click  on  the  “details”  option  (in  case  the  code  is  rejected),  you  will  be able to see the 
failed  test  cases.  But  the details of these test cases won’t be mentioned as it might lead to hard 
coding by some students. 
 
If  the  code  is  partially  correct,  marks  will  be  awarded  depending  on  the  number  of  non-sample 
test cases passed successfully.  
 
  Please  note  that  ​if  there  is  no  non-sample  test  case,  on  submission,  the  code  will  remain  in  the 
submitted state and is neither accepted nor rejected.  
 
 
How does the evaluation engine work? 
 
Evaluation  is  done  character  by  character  in  the  console.  A  mismatch  of  even  a  character  will 
prevent the expected output and will throw an error.  
 
For the non-sample test cases, the evaluation is done at the backend.  
 
2. Timed assessments coding question 
 
In  a  timed  assessment,  the submit button is triggered as soon as the test ends. Initially, you can 
verify and run the code. You can submit all the questions upon completion at one go.  

Common questions

Powered by AI

The upGrad learning platform features two main types of coding assessments: In-module coding questions and Timed assessments. In-module coding questions allow a learner to run, verify, and submit code at their own pace. On the other hand, timed assessments involve a strict time limit where the submit action is automatically triggered at the test conclusion. Evaluation criteria differ between these assessments as in-module questions focus on verification against both sample and non-sample test cases, while timed assessments primarily evaluate the ability to quickly produce correct code under time constraints .

During a timed assessment on the upGrad platform, students can initially use the 'Run' and 'Verify' options to check for errors and ensure all sample test cases pass. However, they must eventually rely on the 'Submit' feature, which is automatically triggered at the end of the timed period, to comprehensively assess their code against both sample and non-sample test cases. This setup encourages efficient time management and accuracy .

Omitting non-sample test cases from a coding assignment's evaluation on the upGrad platform would lead to a situation where the code remains in a 'submitted' state and is neither explicitly accepted nor rejected. This could potentially undermine the reliability of the evaluation process, as without the rigour of hidden non-sample test cases, it's possible for students to pass submissions through hardcoded scenarios optimized only for sample cases, thereby reducing the assessment's effectiveness in gauging true coding proficiency and adaptability .

The upGrad evaluation engine checks the correctness of submitted code in non-sample test cases by assessing it character by character at the backend. Even a single character mismatch can prevent the acceptance of expected output, emphasizing precision in coding. This stringent evaluation method compels students to ensure every detail of their code aligns perfectly with the expected output, promoting careful attention to detail .

The 'Submit' option in the upGrad coding console validates code against both sample and non-sample test cases. A code submission is accepted if it passes all of these test cases successfully. If non-sample test cases fail, the code is rejected, although partial marks may be granted depending on the number of passed non-sample test cases. This dual-layered testing ensures comprehensive evaluation of code correctness and robustness .

The upGrad platform facilitates iterative testing and improvement of code through features such as 'Run', 'Verify', and 'Submit'. The 'Run' option enables learners to check for syntactical and execution errors, providing a baseline for initial code debug. The 'Verify' option aids in checking code against sample test cases to verify logical correctness. Finally, the 'Submit' option allows testing against non-sample test cases for conclusive evaluation. This structured process encourages students to iteratively refine their code, building a deeper understanding of debugging, logic structuring, and problem-solving, critical to skill development .

The 'Run' feature in the upGrad coding assessments serves to identify syntactical, runtime, or execution errors in a learner's code. It provides an immediate check of code execution feasibility but does not evaluate the code against any test cases, either sample or non-sample. As a result, while it is useful for detecting errors, it has no direct impact on the actual assessment outcome which depends on the passing of test cases through the 'Verify' and 'Submit' features .

Sample test cases are visible to learners and serve as initial checks for the logic of their code, allowing modifications based on observed performance. Non-sample test cases, however, are hidden and are the primary determinant of the final score in the evaluation process, as they prevent learners from hard-coding solutions. Evaluation focuses on non-sample test cases to ensure that the submitted code is robust and generalizable to different inputs .

upGrad prevents hard-coding solutions by hiding the non-sample test cases to ensure learners can't tailor their solutions specifically to known inputs. The validity of code is evaluated by passing both sample and non-sample test cases, with the final score awarded solely based on non-sample test cases' success. This approach ensures that submitted solutions are generalizable rather than specifically tailored .

The submit-on-test-end approach in upGrad's timed assessments impacts a student's coding practice by imposing a time constraint that necessitates effective time management and prioritization of tasks. This method compels students to balance the depth of their solution with the time available, encouraging the development of quick problem-solving skills and the ability to write functional code under pressure. It further emphasizes the importance of having a strategic approach to assessments, potentially influencing how students prepare and practice coding outside of test conditions .

You might also like