In response to the OP:
Indeed bugs are a fact of anything coded. Everyone should know that by now. And the definition of what a bug is has gotten broader the past years, but in general, bugs occur when the binary or script runs into an unknown situation and does not know how to handle it, so it stops working the way it was meant to work: in the case of a video game, this could be a CTD, a broken quest, etc...
Now, as with any product, before the product goes to the market, it needs to be UAT'd to verify that the functions it is supposed to perform do indeed work, even if the testing environment is a homogeneous environment, and this, it seems Bethesda did not do with Skyrim.
A small example:
The game is composed of quests, which in the case of Skyrim, runnig these quests would be the functions it is supposed to perform. You don't need to be a software engineer to know that Skyrim's quests are broken down in stages, and you go from one stage to the other by your character performing some action. Action is performed, stage xx is set, you get a stage marked completed in your journal, and a new entry as to what to do. Well, I have come into at least 2 minor quests in which there seems to be a missing quest stage which prohibits me from continuing said quest. And while I don't have the construction set to go inside and 100% verify if indeed the quest stage is there or not, the console commands tell me that stage is just not there, therefore making completing the quest impossible., unless I skip that stage with a console command that puts the quest further along, or stops the quest altogether.
Wouldn't you agree that, at the very minimum, QA should have had someone play through all the quests to make sure they complete, or end the way they were coded to complete? That seems like THE most basic testing you'd need to do is UAT, since that's the core of the game. Right?
Speaking for myself, the main reason I still buy gamesas games, is that I get the construction set and I can fix stuff like that, so while annoying, I still can fix it myself And besides, most of the entertainment value I get from Bethesda games is in the modifications I make to the game. But I can see how Joe Q. Gamer will not be happy encountering these bugs, especially if they don't have the ability to fix them playing in consoles.
Thanks very much for the well thought out response.
For positive, straight down the middle, testing then yeah the chances are that UAT will pick them up. To be honest though, for things like complex state/clashing quest bugs, UAT probably isn't going to help you. For a testing task on the scale of quest(state) testing in a game like skyrim I would imagine they'd either have to have a
massively resourced and structured (risk prioritised) system testing effort and/or some seriously swish test automation. The number of potential state clashes (and therefore test cases) is simply astronomical. If there's say 250 distinct quests and each had an average of 5 quest steps then if we really wanted to comprehensively test each possible state (realistically, we don't, but for giggles) that would require (forgive me if this is wrong, my maths is rusty) 250^5, so, 976,562,500,000 test cases? Obviously, that's somewhat tongue-in-cheek, and you can always reduce test case load with state interaction prediction / equivalence-partitioning-style processes, but either way, you're looking at a MASSIVE testing effort and you can probably see why it's pretty likely that you're going to see some quest issues in the wild.
I do absolutely agree with you that QA should have had people play through all the quests to make sure they complete, but to be fair, they almost certainly did. That would probably be about the easiest function they had them to perform. Like I said though, to every QA's chagrin, a found bug does not a fixed bug make.