Repository: promptfoo/promptfoo
Issue: Tests File is Not Loaded for Scenarios
Root cause: Configuration Error

**Describe the bug**
When I use scenarios, I can't load tests from another yaml file.

**To Reproduce**
This works:
```yaml
scenarios:
  - config:
      - vars:
          abc: def
    tests:
      - vars:
          testPrompt: What services do you offer?
      - vars:
          testPrompt: How can I confirm an order?
```
But if I move the tests into their own files:
```yaml
scenarios:
  - config:
      - vars:
          abc: def
    tests: tests.yaml
```
or move the scenario into its own file:
```yaml
scenarios:
  - scenario.yaml
```

I get this error:
```
TestSuite Schema Validation Error:

  {"_errors":[],"scenarios":{"0":{"_errors":[],"tests":{"0":{"_errors":["Expected object, received string"]},"_errors":[]}},"_errors":[]}}

Please review your promptfooconfig.yaml configuration.
```
**Expected behavior**
It should work the same way as the first case where everything is in one file.

**System information (please complete the following information):**

- Promptfoo version: 0.77.0

@mldangelo I'm still getting errors in 0.78.0. I tested it with Node v18.19.0 and Node v20.16.0

### Tests
Here's my tests.yaml file which I keep in the same folder as my promptfooconfig.yaml file:
```yaml
- vars:
    testPrompt: What is A?
- vars:
    testPrompt: What is B?
```
and my promptfooconfig.yaml file contains this:
```yaml
scenarios:
  - config:
      - vars:
          profile: abcd
    tests: tests.yaml
```

I get this error when running `npx promptfoo eval`:
```
TestSuite Schema Validation Error:

  {"_errors":[],"scenarios":{"0":{"_errors":[],"tests":{"_errors":["Expected array, received string"]}},"_errors":[]}}

Please review your promptfooconfig.yaml configuration.
C:\Users\mrafn\test_repo\tests\Promptfoo\node_modules\promptfoo\dist\src\evaluator.js:390
                    ]).map((test) => {
                       ^

TypeError: (scenario.tests || [{}]).map is not a function
    at Evaluator.evaluate (C:\Users\mrafn\test_repo\tests\Promptfoo\node_modules\promptfoo\dist\src\evaluator.js:390:24)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async runEvaluation (C:\Users\mrafn\test_repo\tests\Promptfoo\node_modules\promptfoo\dist\src\commands\eval.js:124:25)
    at async doEval (C:\Users\mrafn\test_repo\tests\Promptfoo\node_modules\promptfoo\dist\src\commands\eval.js:250:5)

Node.js v18.19.0
```

### Scenarios
I made a scenario.yaml file:
```yaml
config:
  - vars:
      api: maxio
tests:
  - vars:
      testPrompt: What services does this API offer?
  - vars:
      testPrompt: What is a price point?
```

and referenced it in my config like this:
```yaml
scenarios:
  - scenario.yaml
```

and it's giving me this error:
```
TestSuite Schema Validation Error:

  {"_errors":[],"scenarios":{"0":{"_errors":["Expected object, received string"]},"_errors":[]}}

Please review your promptfooconfig.yaml configuration.
C:\Users\mrafn\test-repo\tests\Promptfoo\node_modules\promptfoo\dist\src\evaluator.js:384
                for (const data of scenario.config) {
                                            ^

TypeError: scenario.config is not iterable
    at Evaluator.evaluate (C:\Users\mrafn\test-repo\tests\Promptfoo\node_modules\promptfoo\dist\src\evaluator.js:384:45)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async runEvaluation (C:\Users\mrafn\test-repo\tests\Promptfoo\node_modules\promptfoo\dist\src\commands\eval.js:124:25)
    at async doEval (C:\Users\mrafn\test-repo\tests\Promptfoo\node_modules\promptfoo\dist\src\commands\eval.js:250:5)

Node.js v18.19.0
```